Откройте файл из командной строки
Версия kile по умолчанию (Kile 2.9.91), поставляемая с kubuntu 18.04, не работает должным образом. В старых версиях это
$ kile myfile.tex
откроет myfile.tex
для редактирования. Тем не менее, в текущей версии это пытается и не удается открыть http://myfile.tex
, Я получаю сообщение об ошибке: " http://myfile.tex/ Host not found", что не слишком удивительно. Я пытался обернуть имя файла в кавычки, используйте kile ./myfile.tex
а также kile file://myfile.tex
, Первый ничего не изменил, второй и третий привели к segfault.
Как правильно открывать файлы с помощью командной строки в Kile 2.9.91?
Что работает, а что нет?
$ kile myfile.tex -> Error: http://myfile.tex
$ kile "myfile.tex" -> Error: http://myfile.tex
$ kile myfile.txt -> Error: http://myfile.txt
$ kile myfile -> Error: http://myfile
$ kile Documents/myfile.tex -> Error: http://documents/myfile.tex
$ kile ~/Documents/myfile.tex -> Works!
$ kile /home/user/Documents/myfile.tex -> Works!
$ kile $(realpath myfile.tex) -> Works!
$ kile ./myfile.tex -> segfault
$ kile file://myfile.tex -> segfault
1 ответ
Грязное время обхода: напишите функцию в свой .bashrc
/ .zshrc
(другие могут работать, эти два - единственные, которые я проверял), который вызывает realpath
чтобы получить абсолютный путь к входному файлу:
function kile-open {
kile $(realpath $1)
}
Чтобы восстановить намеченное поведение (для одного файла за раз, не работая с какими-либо другими параметрами, это может быть легко улучшено с некоторыми знаниями bash). Это ни в коем случае не решение, просто способ подражать предполагаемому поведению на данный момент.
Вдохновленный решением @m00am, в bash
Вы можете добавить следующее к .bashrc
:
kile() { command kile $(realpath "$@") }
Команда kile myfile.tex
потом будет работать. Лично я даже перенаправляю вывод на /dev/null
и отпустите команду:
kile() { command kile $(realpath "$@") > /dev/null 2>&1 & }