Як запустити Emacs GUI на OS X


3

Хто-небудь знає якісь трюки для запуску emacsз GUI на OS X зі стандартною командою emacs?

Я десятирічний користувач Linux і думав, що купую Mac на деякий час, щоб залишатися різноманітним. Тепер я можу відкривати файли через emacs open file.txt, але це не дозволить мені використовувати режим налагодження.


1
Ви пробували open -a ProgramName --args program_argumentsчи /Applications/ProgramName/Contents/MacOS/binary_name program_arguments?
Даніель Бек

Я спробував, що спочатку, але я хочу простота запуску його з просто старий, "Emacs". Все одно, дякую.
trentonknight

Крім того, aliasя вже рекомендував би використовувати Aquamacs замість стандартних emacs, оскільки він вже оптимізований для середовища OS X.
eFrane

Відповіді:


2

Можна створити псевдонім, наприклад:
alias emacs = "open -a ProgramName"


Так, покладіть його в моєму bash_profile:emacs='open -a /Applications/Emacs.app "$@"'
trentonknight

2

Якщо в межах вашого досвіду знадобиться:

  1. Створіть каталог /Users/Fred, на якому, наприклад, /Users/Fred/binзберігаються ваші власні виконувані програми.

  2. Переконайтеся, що MacOS знає про ваш виконуваний каталог при вході, редагуючи параметри в ~ / .MacOS / environment.plist.

  3. Створіть файл ~ / bin / emacs. У ньому ставлять лінії

    #!/bin/sh
    exec /Applications/Emacs.app/Contents/MacOS/Emacs $* 
    
  4. Переконайтеся, що файл має дозвіл на виконання: chmod a+x ~/bin/emacs

  5. Залежно від вашого успіху з 2 (і чи ви вийшли і не вийшли) ви повинні мати можливість виконувати emacs або просто з emacs, або з [worst case] з ~ / bin / emacs

  6. Перевага цього підходу перед використанням openполягає в тому, що тепер можна використовувати командні рядки sudo emacs --user Fred /etc/something-owned-by-root. Це --user Fredкорисно, якщо у вас є сильно налаштовані emacs.


1
Чи має сенс додати тест, чи запущено emacs-сервер (згідно з @DougHarris), і якщо так, то використовуйте його, щоб відвідати файл. Інакше, запустити нову сесію emacs?
Dror

Як запобігти цьому запуску другого екземпляра GUI Emacs, якщо він вже відкритий?
incandescentman

1

Ви використовуєте bash? Завдяки цьому визначенню функції bash у вашому .bashrc (або будь-якому файлі, з якого ви посилаєте свої псевдоніми bash), "emacs <stuff more stuff>" зробить те, що ви очікуєте, включаючи залишення терміналу у відповідь відразу після запуску emacs.

emacs() { /Applications/Emacs.app/Contents/MacOS/Emacs "$@" & }

Я зробив кілька змін, але ваша відповідь була на точку. Це те, що я маю у своєму emacs='open -a /Applications/Emacs.app "$@"'
файлі

0

Ви пробували Aquamacs? Він має набір командного рядка, а потім ви можете використовувати його з командного рядка.


Я пробував це та його красивий але його майже не emacs більше itsso customized. Це цікаве приймає всі задоволення від нещасних і вручну додавати всі мої файли. Також він повністю відхилив мій файл .emacs. Я впевнений, що є робота навколо, але чому турбуватися, коли я хочу чисту версію emacs в будь-якому випадку. Дякую.
trentonknight

0
  1. Запустіть Emacs після кожної перезавантаження. Ніколи не здавайся. (Тільки перезавантажте комп'ютер, коли оновлення ОС змушує перезавантажити комп'ютер).
  2. Переконайтеся , що ви починаєте сервер Emacs , коли Emacs запускається шляхом введення (server-start)в вашому .emacsфайлі.
  3. Використовуйте утиліту командного рядка, emacsclient -nщоб відкривати файли в Emacs.

Необов'язковий крок 4 - створити псевдонім, щоб зробити його коротшим:

alias em='emacsclient -n'
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.