завершение имени файла в gnuplot не завершает границу

#gnuplot

#gnuplot

Вопрос:

Я использую gnuplot в течение длительного времени, и одна проблема, которую я всегда чувствую, заключается в том, что она не закрывает " завершение вкладки on filename. например

 gnuplot> p 'fo<Tab> 
 

даст мне:

 gnuplot> p 'fort.10 <cursor here, see the missing '> 
 

хотя я ожидал бы иметь:

 gnuplot> p 'fort.10' <cursor here> 
 

Я использую rpm из fedora, который дает:

  show version long 

        G N U P L O T 
        Version 4.6 patchlevel 3    last modified 2013-04-12 
        Build System: Linux x86_64 

        Copyright (C) 1986-1993, 1998, 2004, 2007-2013 
        Thomas Williams, Colin Kelley and many others 

        gnuplot home:     http://www.gnuplot.info 
        faq, bugs, etc:   type "help FAQ" 
        immediate help:   type "help"  (plot window: hit 'h') 
Compile options: 
-READLINE   LIBEDITLINE   HISTORY   
-BACKWARDS_COMPATIBILITY   BINARY_DATA   
 GD_PNG   GD_JPEG   GD_TTF   GD_GIF   ANIMATION   
-USE_CWDRC   X11   X11_POLYGON   MULTIBYTE   X11_EXTERNAL  USE_MOUSE   HIDDEN3D_QUADTREE   
 DATASTRINGS   HISTOGRAMS   OBJECTS   STRINGVARS   MACROS   IMAGE   USER_LINETYPES  STATS 

GNUPLOT_DRIVER_DIR = "/usr/libexec/gnuplot/4.6" 
GNUPLOT_PS_DIR     = "/usr/share/gnuplot/4.6/PostScript" 
HELPFILE           = "/usr/share/gnuplot/4.6/gnuplot.gih" 
 

После компиляции

 -READLINE   LIBEDITLINE   HISTORY  
-BACKWARDS_COMPATIBILITY   BINARY_DATA  
 GD_PNG   GD_JPEG   GD_TTF   GD_GIF   ANIMATION  
-USE_CWDRC   X11   X11_POLYGON   MULTIBYTE   X11_EXTERNAL  USE_MOUSE   HIDDEN3D_QUADTREE  
 DATASTRINGS   HISTOGRAMS   OBJECTS   STRINGVARS   MACROS   IMAGE   USER_LINETYPES  STATS 

GNUPLOT_DRIVER_DIR = "/usr/libexec/gnuplot/4.6"
GNUPLOT_PS_DIR     = "/usr/share/gnuplot/4.6/PostScript"
HELPFILE           = "/usr/share/gnuplot/4.6/gnuplot.gih"
 

Ответ №1:

Это проблема с редактированием командной строки gnuplot. То же самое происходит с двоичным файлом gnuplot Debian.

Если вы самостоятельно скомпилируете gnuplot с помощью libreadline, завершение работает нормально. Это проблема с лицензией: gnuplot не лицензирован по GPL, поэтому запрещено распространять двоичные файлы gnuplot, которые связаны с ним, см. https://lists.debian.org/debian-devel/1998/06/msg01162.html

Это нормально, если вы сами скомпилируете gnuplot и свяжете его с GNU libreadline, но вам не разрешено распространять полученный двоичный файл.

Комментарии:

1. Спасибо, я скомпилировал таким образом …. только удаление лишнего пространства, без закрытия «. Я добавляю новые параметры в сообщение

2. Я не знаю, что -READLIǸE это говорит. Оба двоичных файла Debian и мой двоичный файл показывают одно и то же, но один построен с использованием libreadline, а другой — нет. Что вам ldd $(which gnuplot) | grep 'readline' это дает?

3. Затем попробуйте использовать ./configure --with-readline=gnu , хотя это должно быть по умолчанию при самостоятельной компиляции. Убедитесь, что у вас установлены соответствующие файлы разработки.