Как заставить Cocoa Emacs перейти на номер строки из внешнего приложения? - PullRequest
2 голосов
/ 05 июня 2010

При использовании Carbon Emacs (v22) из ​​внешнего приложения (например, Unity 3D) файлы, отправляемые в Carbon Emacs, переходят на номер строки, запрашиваемый внешним приложением (т. Е. Двойной щелчок на редакторе сообщений об ошибках, выбранном в настройках, началось с файла с номером строки ошибки). По какой-то причине новый Cocoa Emacs (v23) больше не делает этого. Вместо этого он просто открывает файл, но не переходит на номер строки, запрошенный внешним приложением.

1 Ответ

4 голосов
/ 13 июня 2010

Не уверен, какую командную строку Unity 3D использовал для правильного запуска Carbon Emacs, но похоже, что вы можете открыть файл в заданной позиции в Emacs 23, используя следующее:

emacsclient -c +4:3 FILE1

где 4 - номер строки, а 3 - номер столбца. Обратите внимание, что исполняемый вами emacsclient должен соответствовать вашему emacs; в OS X вы найдете /usr/bin/emacsclient, но вам действительно нужно вместо этого выполнить /Applications/Emacs.app/Contents/MacOS/bin/emacsclient.

Вы также можете использовать небольшое вспомогательное приложение, чтобы Emacs отвечал на emacs: // URL-адреса, содержащие аргументы строк и столбцов. Я писал об этом здесь .

...