parent
6634dc81fe
commit
a64a0d64cb
@ -812,9 +812,9 @@ ensure that the shell starts in interactive mode and reads its startup rc files.
|
||||
|
||||
o('editor', '.', long_text=_('''
|
||||
The console editor to use when editing the kitty config file or similar tasks.
|
||||
A value of . means to use the environment variable EDITOR. Note that this
|
||||
environment variable has to be set not just in your shell startup scripts but
|
||||
system-wide, otherwise kitty will not see it.
|
||||
A value of . means to use the environment variables VISUAL and EDITOR in that
|
||||
order. Note that this environment variable has to be set not just in your shell
|
||||
startup scripts but system-wide, otherwise kitty will not see it.
|
||||
'''))
|
||||
|
||||
o('close_on_child_death', False, long_text=_('''
|
||||
|
||||
@ -247,10 +247,10 @@ def read_shell_environment(opts=None):
|
||||
def setup_environment(opts, args):
|
||||
extra_env = opts.env.copy()
|
||||
if opts.editor == '.':
|
||||
if 'EDITOR' not in os.environ:
|
||||
if 'VISUAL' not in os.environ and 'EDITOR' not in os.environ:
|
||||
shell_env = read_shell_environment(opts)
|
||||
if 'EDITOR' in shell_env:
|
||||
editor = shell_env['EDITOR']
|
||||
if 'VISUAL' in shell_env or 'EDITOR' in shell_env:
|
||||
for editor in (shell_env['VISUAL'], shell_env['EDITOR']):
|
||||
if 'PATH' in shell_env:
|
||||
import shlex
|
||||
editor_cmd = shlex.split(editor)
|
||||
|
||||
@ -415,12 +415,9 @@ def get_editor():
|
||||
ans = getattr(get_editor, 'ans', False)
|
||||
if ans is False:
|
||||
import shlex
|
||||
ans = os.environ.get('EDITOR')
|
||||
if not ans or not exe_exists(shlex.split(ans)[0]):
|
||||
for q in ('vim', 'nvim', 'vi', 'emacs', 'kak', 'micro', 'nano', 'vis'):
|
||||
r = exe_exists(q)
|
||||
if r:
|
||||
ans = r
|
||||
for ans in (os.environ.get('VISUAL'), os.environ.get('EDITOR'), 'vim',
|
||||
'nvim', 'vi', 'emacs', 'kak', 'micro', 'nano', 'vis'):
|
||||
if ans and exe_exists(shlex.split(ans)[0]):
|
||||
break
|
||||
else:
|
||||
ans = 'vim'
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user