الخطأ على النحو التالي:
Error detected while processing /Users/vvqboy/.vimrc:
line 8:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Users/vvqboy/Library/Python/2.7/lib/python/site-packages/powerline/__init__.py", line 11, in <module>
from powerline.lib.config import ConfigLoader
File "/Users/vvqboy/Library/Python/2.7/lib/python/site-packages/powerline/lib/config.py", line 11, in <module>
from powerline.lib.threaded import MultiRunnedThread
File "/Users/vvqboy/Library/Python/2.7/lib/python/site-packages/powerline/lib/threaded.py", line 7, in <module>
from powerline.lib.monotonic import monotonic
File "/Users/vvqboy/Library/Python/2.7/lib/python/site-packages/powerline/lib/monotonic.py", line 19, in <module>
import ctypes
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 555, in <module>
_reset_cache()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 279, in _reset_cache
CFUNCTYPE(c_int)(lambda: None)
MemoryError
line 9:
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'powerline_setup' is not defined
line 10:
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'powerline_setup' is not defined
Traceback (most recent call last):
File "<string>", line 4, in <module>
File "/Users/vvqboy/Library/Python/2.7/lib/python/site-packages/powerline/__init__.py", line 11, in <module>
from powerline.lib.config import ConfigLoader
File "/Users/vvqboy/Library/Python/2.7/lib/python/site-packages/powerline/lib/config.py", line 11, in <module>
from powerline.lib.threaded import MultiRunnedThread
File "/Users/vvqboy/Library/Python/2.7/lib/python/site-packages/powerline/lib/threaded.py", line 7, in <module>
from powerline.lib.monotonic import monotonic
File "/Users/vvqboy/Library/Python/2.7/lib/python/site-packages/powerline/lib/monotonic.py", line 19, in <module>
import ctypes
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 555, in <module>
_reset_cache()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 279, in _reset_cache
CFUNCTYPE(c_int)(lambda: None)
MemoryError
An error occurred while importing powerline module.
This could be caused by invalid sys.path setting,
or by an incompatible Python version (powerline requires
Python 2.6, 2.7 or 3.2 and later to work). Please consult
the troubleshooting section in the documentation for
Vim: Caught deadly signal SEGV
Vim: Finished.
[1] 7428 segmentation fault vi .vimrc
vimrc على النحو التالي:
set rtp+=/Users/vvqboy/Library/Python/2.7/lib/python/site-packages/powerline/bindings/vim
" These lines setup the environment to show graphics and colors correctly.
set nocompatible
set t_Co=256
let g:minBufExplForceSyntaxEnable = 1
python from powerline.vim import setup as powerline_setup
python powerline_setup()
python del powerline_setup
if ! has('gui_running')
set ttimeoutlen=10
augroup FastEscape
autocmd!
au InsertEnter * set timeoutlen=0
au InsertLeave * set timeoutlen=1000
augroup END
endif
set laststatus=2 " Always display the statusline in all windows
set guifont=Inconsolata\ for\ Powerline:h14
set noshowmode " Hide the default mode text (e.g. -- INSERT -- below the statusline)
set nu
set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
انا أحاول
pip install --upgrade --force-reinstall --user powerline-status
Collecting powerline-status
Downloading https://files.pythonhosted.org/packages/9c/30/8bd3c62642778af9ad813a526c6ff7dd2f98144d6580ad6fab94ca389265/powerline-status-2.7.tar.gz (233kB)
100% |████████████████████████████████| 235kB 69kB/s
Building wheels for collected packages: powerline-status
Running setup.py bdist_wheel for powerline-status ... done
Stored in directory: /Users/vvqboy/Library/Caches/pip/wheels/c4/81/6b/bb1f440b9999fcfda2a1ccdf7b57a886acb08ea3e9e794945d
Successfully built powerline-status
Installing collected packages: powerline-status
Found existing installation: powerline-status 2.6
Uninstalling powerline-status-2.6:
Successfully uninstalled powerline-status-2.6
Successfully installed powerline-status-2.7
ثم لا يزال هناك خطأ
Vim: Caught deadly signal SEGV
Error detected while processing /Users/vvqboy/.vimrc:Vim: Finished.
line 8:
Exception MemoryError: MemoryError() in <module 'threading' from '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.pyc'> ignored
[1] 1788 segmentation fault vi .vimrc
بيثون - الإصدار
بايثون 2.7.10
مرحبًا ، نفس الخطأ هنا. حاولت إصلاحين باستخدام الشراب (اعتقدت أنه قد يكون مشكلة ارتباط سيم) ، ولكن يبدو أن كل شيء على ما يرام ، ويبدو أن pyenv الخاص بي على ما يرام.
إليك الخطأ الذي يجب أن أتأكد منه بشكل مضاعف (وهذا حدث بعد تحديث Moajve أيضًا بالنسبة لي):
An error occurred while importing powerline module.
This could be caused by invalid sys.path setting,
or by an incompatible Python version (powerline requires
Python 2.6, 2.7 or 3.2 and later to work). Please consult
the troubleshooting section in the documentation for
possible solutions.
Error detected while processing
...
line 157:
Traceback (most recent call last):
File "<string>", line 53, in <module>
File "<string>", line 9, in powerline_troubleshoot
File "/Users/.../Library/Python/2.7/lib/python/site-packages/powerline/__init__.py", line 11, in <module>
from powerline.lib.config import ConfigLoader
File "/Users/.../Library/Python/2.7/lib/python/site-packages/powerline/lib/config.py", line 11, in <module>
from powerline.lib.threaded import MultiRunnedThread
File "/Users/.../Library/Python/2.7/lib/python/site-packages/powerline/lib/threaded.py", line 7, in <module>
from powerline.lib.monotonic import monotonic
File "/Users/.../Library/Python/2.7/lib/python/site-packages/powerline/lib/monotonic.py", line 19, in <module>
import ctypes
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 555, in <module>
_reset_cache()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 279, in _reset_cache
CFUNCTYPE(c_int)(lambda: None)
MemoryError
ومن المثير للاهتمام ، أن توجيه المسار إلى ملف _actual_ powerline.vim سيؤدي إلى تحميل vim بشكل جيد ولن يؤدي إلى أي أخطاء ، ولكنه لا يقوم بتحميل خط الطاقة أيضًا.
/Library/Python/2.7/site-packages/powerline/powerline/bindings/vim/plugins/powerline.vim
Vim يبتعد بسعادة دون تحميل powerline ... بالإضافة إلى ذلك ، يقوم tmux conf الخاص بي بتحميل powerline على ما يرام ، لذلك أعتقد أن هذه مشكلة خاصة بـ vim-powerline. سأقوم ببعض التحقيقات وأعود إليك.
تحرير: أتاح لي التبديل إلى إصدار نظام python وتشغيل غلاف تفاعلي التشغيل
from powerline.vim import VimPowerLine
بدون أي متاعب.
لأي سبب من الأسباب ، لا يمكنني التعليق على سطر CTYPES (بعض أخطاء الأذونات ، سيتم التحقيق فيها لاحقًا) ، لكنني غير قادر على تتبع الملف المصدر حيث يتم تخصيص الذاكرة بالفعل. هل يعرف أحد مكان وجود هذا الملف ، أو ما إذا كانت هذه هي الطريقة الصحيحة للمضي قدمًا؟
هل تم تجميع إصدار Python Vim باستخدام نسخة Python التي يستخدمها Vim بالفعل؟ MemoryError ثم SEGV أثناء استيراد الأنواع يشير إلى مشاكل في تثبيت Python ، وليس مشاكل خطوط الطاقة. يجب أن تحصل على نفس المشكلة (على الأقل ، MemoryError ، على الرغم من أنني لست متأكدًا مما تعنيه في الواقع: ربما ، يعيد مخصص الذاكرة NULL؟) إذا قمت بتعطيل powerline وفعلت :python import ctypes
في vim.
البنغو ، هذا لم ينجح. ومع ذلك ، كان يعمل بشكل جيد للغاية قبل تحديث MacOS Mojave.
خطأ +1 بعد التحديث إلى mojave
Traceback (most recent call last):
File "<string>", line 4, in <module>
File "/Users/zzs/Library/Python/2.7/lib/python/site-packages/powerline/__init__.py", line 11, in <module>
from powerline.lib.config import ConfigLoader
File "/Users/zzs/Library/Python/2.7/lib/python/site-packages/powerline/lib/config.py", line 11, in <module>
from powerline.lib.threaded import MultiRunnedThread
File "/Users/zzs/Library/Python/2.7/lib/python/site-packages/powerline/lib/threaded.py", line 7, in <module>
from powerline.lib.monotonic import monotonic
File "/Users/zzs/Library/Python/2.7/lib/python/site-packages/powerline/lib/monotonic.py", line 19, in <module>
import ctypes
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 555, in <module>
_reset_cache()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 279, in _reset_cache
CFUNCTYPE(c_int)(lambda: None)
MemoryError
An error occurred while importing powerline module.
This could be caused by invalid sys.path setting,
or by an incompatible Python version (powerline requires
Python 2.6, 2.7 or 3.2 and later to work). Please consult
the troubleshooting section in the documentation for
possible solutions.
Error detected while processing /usr/local/lib/python2.7/site-packages/powerline/bindings/vim/plugin/powerline.vim:
line 157:
Traceback (most recent call last):
File "<string>", line 53, in <module>
File "<string>", line 9, in powerline_troubleshoot
File "/Users/zzs/Library/Python/2.7/lib/python/site-packages/powerline/__init__.py", line 11, in <module>
from powerline.lib.config import ConfigLoader
File "/Users/zzs/Library/Python/2.7/lib/python/site-packages/powerline/lib/config.py", line 11, in <module>
from powerline.lib.threaded import MultiRunnedThread
File "/Users/zzs/Library/Python/2.7/lib/python/site-packages/powerline/lib/threaded.py", line 7, in <module>
from powerline.lib.monotonic import monotonic
File "/Users/zzs/Library/Python/2.7/lib/python/site-packages/powerline/lib/monotonic.py", line 19, in <module>
import ctypes
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 555, in <module>
_reset_cache()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 279, in _reset_cache
CFUNCTYPE(c_int)(lambda: None)
MemoryError
Press ENTER or type command to continue
هل تم تجميع إصدار Python Vim باستخدام نسخة Python التي يستخدمها Vim بالفعل؟ MemoryError ثم SEGV أثناء استيراد الأنواع يشير إلى مشاكل في تثبيت Python ، وليس مشاكل خطوط الطاقة. يجب أن تحصل على نفس المشكلة (على الأقل ، MemoryError ، على الرغم من أنني لست متأكدًا مما تعنيه في الواقع: ربما ، يعيد مخصص الذاكرة NULL؟) إذا قمت بتعطيل powerline وفعلت
:python import ctypes
في vim.
لذلك كان يعمل بشكل جيد قبل الترقية. يعمل إعداد zsh و tmux الخاص بي بشكل جيد باستخدام الارتباطات الأخرى أيضًا.
عند تشغيل الأمر: :python import ctypes
في vim ، أحصل على نفس الخطأ (خطأ CTYPE) كما هو موضح أعلاه. أتساءل ما الذي تغيرت به Apple في النسخة المشحونة من Apple-Python ، أو في الحقيقة ، إذا قاموا بتغيير أي شيء. سأحاول لاحقًا الليلة وأعود مرة أخرى.
يستخدم Zsh و tmux مترجم Python في عملية منفصلة (إلا إذا كنت تستخدم zsh مع libzpython ، لكن لا يوجد مكافئ لـ tmux). يقوم Vim إما بتحميل Python كمكتبة ديناميكية عبر dlopen أو مجرد روابط معها وهي أكثر هشاشة ، وإذا قمت بتغيير إصدار Python ، فأنت بحاجة إلى إعادة تجميع Vim مع الإصدار الجديد أو المخاطرة بالتعرض لمشاكل. لست متأكدًا من الكيفية التي قد تؤدي بها الاختلافات في الإصدارات إلى تعطل استيراد ctypes في وقت متأخر (عادةً لن تحصل على :python
على الإطلاق ، أو قد يتعطل في بعض الأحيان) ، ولكن هذا تفسير واحد محتمل.
واحد آخر هو الفرق بين النظام وإصدار البيرة بايثون. ليس لدي جهاز Mac ولا يمكنني تحديد Vim الذي من المفترض أن يقوم بتحميل الاثنين وكيف يقوم بهذا العمل بالضبط ، ولكن هذا تفسير شائع آخر للمشاكل مع (التطبيق (vim ، إلخ)) + إعداد Python على Mac ، وقد يتسبب ذلك في حدوث أنواع مختلفة من الأخطاء عند الاستيراد.
@ ZyX-I oooo حصلت عليه. هل لديك مستند جاهز يصف العملية؟ لم يكن لدي أي فكرة عن كيفية عملها.
اسمحوا لي بإعادة تجميع vim باستخدام إصدار النظام وشاهد ما سيحدث!
المحلول!!
1) اكتشف إصدار vim الحالي الخاص بك. تم تجميع Mine مع البيرة المحلية ، ولكنه كان إصدار النظام الافتراضي ، والذي أعادت شركة Apple تجميعه لإصدار Mojave (بالنظر إلى التاريخ). أعتقد أن البيان السابق دقيق ، بناءً على تاريخ التجميع ، لكن صححني إذا كنت مخطئًا. قم بتشغيل vim --version
وسترى أنه قد تم تجميعه بواسطة [email protected]
.
2) اخترت إلغاء تثبيت النسخة المخمرة من python @ 2 ، وقمت بتثبيت python عبر الشراب (يتم تثبيته 3.7.0 افتراضيًا في وقت كتابة هذا التقرير) ، ولم أقم بربطه. فقط تركها هناك. اقرأ بعض المنتديات التي تفيد بأنه لا يتم تجميعه باستخدام brew python ما لم يتم تثبيته. @ ZyX - ربما كنت تعرف المزيد عن هذا؟
3) بعد brew install python
، استخدم البيرة لتثبيت vim باستخدام الأمر brew install vim
. ثم قم بتشغيل /usr/local/bin/vim --version
وتأكد من وجود علامة "+" بجانب python3. أعد تشغيل الصدفة ، ومن ثم يجب قراءة /.vimrc: /Library/Python/2.7/site-packages/powerline/powerline/bindings/vim/
أو أيًا كان المسار الذي تبحث عنه.
.... ويجب أن تعمل!
تحرير: بعض القواعد ، كتب هذا بدون قهوة.
لدي نفس الخطأ عندما قمت بالترقية إلى Mojave.
line 63:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Users/xxx/Library/Python/2.7/lib/python/site-packages/powerline/__init__.py", line 11, in <module>
from powerline.lib.config import ConfigLoader
File "/Users/xxx/Library/Python/2.7/lib/python/site-packages/powerline/lib/config.py", line 11, in <module>
from powerline.lib.threaded import MultiRunnedThread
File "/Users/xxxx/Library/Python/2.7/lib/python/site-packages/powerline/lib/threaded.py", line 7, in <module>
from powerline.lib.monotonic import monotonic
File "/Users/xxx/Library/Python/2.7/lib/python/site-packages/powerline/lib/monotonic.py", line 19, in <module>
import ctypes
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 555, in <module>
_reset_cache()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 279, in _reset_cache
CFUNCTYPE(c_int)(lambda: None)
MemoryError
line 64:
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'powerline_setup' is not defined
line 65:
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'powerline_setup' is not defined
بعد أن عدت إلى نظام python الافتراضي ، ما زلت أحصل على نفس الخطأ.
zhongruizhi هل جربت ما اقترحته أعلاه؟ لقد نشرت الحل الخاص بي والذي أصلحه لي!
تضمين التغريدة
شكرًا ، ولكن يبدو أن حلك غير مناسب تمامًا لحالتي. أنا لا أستخدم المشروب ، وأنا أستخدم بايثون النظام الافتراضي (2.7.10) و vim. (+ python / dyn -python3).
anirrudh إنه يعمل حقًا بالنسبة لي ، حل جيد ، شكرًا جزيلاً
zhongruizhi لذلك اعتدت الحصول على الإصدار القياسي vim المقدم من Apple أيضًا ، ولكن يبدو أن هذا معطل بالنسبة إلى powerline ، يبدو أن الإصلاح الوحيد هو تثبيت vim عبر الشراب - أما بالنسبة لإصدارات python ، فأنا أعالج ذلك في المنشور أعلاه ، ولكن عليك التأكد من أن + python3 هو شيء ، وليس + python / dyn ، والذي كان بالضبط ما قدمته Apple من vim!
anirrudh شكرًا لك على اكتشاف التفاصيل. ويعمل.
وجدت السبب والحل أعتقد أنه أكثر أناقة:
دالة CFUNCTYPE at _reset_cache () في الملف:
/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py
الحصول على خطأ في الذاكرة.
ثم قفزت إلى هذا الملف ووجدت هذا الرمز:
265 def _reset_cache():
266 _pointer_type_cache.clear()
267 _c_functype_cache.clear()
268 if _os.name in ("nt", "ce"):
269 _win_functype_cache.clear()
270 # _SimpleCData.c_wchar_p_from_param
271 POINTER(c_wchar).from_param = c_wchar_p.from_param
272 # _SimpleCData.c_char_p_from_param
273 POINTER(c_char).from_param = c_char_p.from_param
274 _pointer_type_cache[None] = c_void_p
275 # XXX for whatever reasons, creating the first instance of a callback
276 # function is needed for the unittests on Win64 to succeed. This MAY
277 # be a compiler bug, since the problem occurs only when _ctypes is
278 # compiled with the MS SDK compiler. Or an uninitialized variable?
279 CFUNCTYPE(c_int)(lambda: None)
كما ترى ، تمت إضافة وظيفة CFUNCTYPE في السطر 279 بواسطة unittest على Win64 لأي سبب من الأسباب. بالنسبة لمستخدم mac ، هذا الخط عديم الفائدة ويؤدي إلى خطأ في الذاكرة على macOS. لذلك أعلق على السطر 279 ، وأعد تشغيل vim ، لا توجد أخطاء في powerline.
المزيد من التفاصيل:
الملف __init__.py
هو ملف للقراءة فقط للنظام ، وتحتاج إلى تشغيل الأمر csrutil disable
في وضع استرداد mac (اضغط الأمر + R عند بدء التشغيل) لتعطيل حماية تكامل النظام. بعد إعادة التشغيل ، يمكنك تحرير هذا الملف باستخدام إذن الجذر.
تركيب الشراب vim - with-lua - with-override-system-vi
وإعادة تشغيل قذيفة ثابتة
https://github.com/Valloric/YouCompleteMe/issues/3165#issuecomment -425616700
شكرا لك @ جوشوا تشانغ
عملت معي
شكرا لك @ جوشوا تشانغ
vim على ما يرام ، لكن vi ما زال مخطئًا
`` Vim: تم القبض على إشارة SEGV القاتلة
تم الكشف عن خطأ أثناء معالجة الوظيفة
السطر 4:
استثناء MemoryError: MemoryError () في
خطأ الانقسام: 11`
vim على ما يرام ، لكن vi ما زال مخطئًا
ربما يكون هناك حل أفضل ولكني أصلحت ذلك بإضافة alias vi="vim"
في ملف rc shell الخاص بي
لدي نفس المشكلة مع @ when77 عندما أستخدم commad git commit --amend
.
تضمين التغريدة
حاول اقتراح @ Joshua-Chang ، فهو يعمل بالنسبة لي.
حاول اقتراح @ Joshua-Chang ، فهو يعمل بالنسبة لي.
حاولت.
إنه يعمل عندما أستخدم vim مباشرةً ، لكنه يظل خطأً عند تشغيل الأمر git commit --amend
أو محاولة إصلاح التعارضات في سطر الأوامر.
أخيرًا ، لقد قمت بحل هذه المشكلة من خلال قراءة هذه المقالة. @ كلما 77
https://ltaoo.github.io/2018/10/22/٪E6٪9B٪B4٪E6٪96٪B0٪20macOS٪20Mojave٪20٪E5٪90٪8E٪20vim٪20٪E6٪89٪93 ٪ E4٪ B8٪ 8D٪ E5٪ BC٪ 80 /
kyriejoshua هل تمانع مشاركة الحل؟
إنه الحل الخاص بي. تضمين التغريدة
cd ~/.vim/bundle/YouCompleteMe
git pull
git submodule update --init --recursive.
python install.py
وإعادة تشغيل قذيفة ثابتة
لمستخدمي YCM ، يرجى استخدام جهات اتصال YCM
نحن نتتبع مشكلة مماثلة مع نظام Vim هنا: https://github.com/Valloric/YouCompleteMe/issues/3271
تنبيه المفسد: أعتقد أنه شيء Mojave وليس شيئًا من شركة YCM.
بالنسبة لي ، بدأت المشكلة في الظهور بعد تثبيت "تحديث هام" بواسطة Mojave (على سبيل المثال ، لقد كنت على Mojave لأعمار مع vim / powerline يعمل بشكل جيد). اتضح أنها كانت مجرد حالة استخدام خاطئ لـ vim
(على سبيل المثال /usr/bin/vim
، vim المدمج في Apple) بدلاً من vim من /usr/local/bin/vim
. لقد كانت مجرد حالة إصلاح PATH
؛ التحديث يفترض إعادة ترتيبها.
لقد بدأت للتو في استخدام جهاز Mac مع تثبيت جديد لـ Mojave وحصلت على هذه المشكلة ، تجدر الإشارة إلى أنني أستخدم python3.7.
لقد قمت بحلها عن طريق القيام بما يلي:
brew install vim
echo "alias vim=/usr/local/Cellar/vim/<VIM_VERSION>/bin/vim" >> ~/.bash_profile
ما عليك سوى استبدال VIM_VERSION بإصدار vim المثبت على السطر الأول.
يمكن إضافة تأكيد آخر على ارتباط ذلك بتحديث macOS Mojave. سأضطر إلى إجراء بعض أعمال المقارنة مع جهاز آخر لم يتم تحديثه بعد لمعرفة مكتبات النظام التي تغيرت. أنا متأكد من أنه شيء تغير في تثبيت python 2.7 (.10) الافتراضي أو شيء في مكتبة ذات صلة.
واجهت هذه المشكلة نفسها من bash إلى zsh ، ما تم إصلاحها بالنسبة لي هو تصدير PATH
. export PATH=$HOME/bin:/usr/local/bin:$PATH
كان لدي بالفعل python 3.7.3 ، vim (الإصدار المتضمن من macvim تم تجميعه بواسطة [email protected]) ، وكان لدي بالفعل Mojave. تم فقط الانتقال إلى zsh.
لذا فأنا أحطم رأسي بالحائط في محاولة لمعرفة سبب عدم نجاح هذا الأمر بالنسبة لي في اليوم التالي لإجباري على ترقية الكمبيوتر المحمول الخاص بالعمل إلى Mojave. لقد اتبعت الأدلة المذكورة أعلاه ، وحصلت على powerline يعمل في vim مرة أخرى ، ولكن بالنسبة إلى LIFE مني ، لن يعمل بشكل صحيح عندما أحاول git commit
.
لقد تحققت مرتين في .zshrc
أنه تم تعيين المحرر الخاص بي ليكون vim
. وبعد ذلك alias vi=vim
، وحتى الآن أي الزهر.
ثم بعد إعادة تثبيت powerline و vim حوالي مائة مرة مختلفة لاحظت ذلك في رسالة الخطأ (هذه رسالة خطأ أصغر بكثير بعد إعادة تشغيل نافذة المحطة الطرفية مرة أخرى وعدم بدء تشغيل tmux أو أي شيء آخر:
Vim: Caught deadly signal SEGV
Vim: Finished.
error: /usr/bin/vim died of signal 11
error: There was a problem with the editor '/usr/bin/vim'.
Please supply the message using either -m or -F option.
هناك: /usr/bin/vim
لذلك أنا مضاعفة فحص، والمنخفضة وها في بلدي .gitconfig
كان على النحو التالي:
[core]
editor = /usr/bin/vim
لذلك تم تغيير ذلك إلى editor = vim
TL ؛ DR : إذا كنت لا تزال تواجه مشكلات في تثبيت vim git commit
الخاص بك ، فتحقق من أن .gitconfig
لا يشير إلى نظام vim.
التعليق الأكثر فائدة
المحلول!!
1) اكتشف إصدار vim الحالي الخاص بك. تم تجميع Mine مع البيرة المحلية ، ولكنه كان إصدار النظام الافتراضي ، والذي أعادت شركة Apple تجميعه لإصدار Mojave (بالنظر إلى التاريخ). أعتقد أن البيان السابق دقيق ، بناءً على تاريخ التجميع ، لكن صححني إذا كنت مخطئًا. قم بتشغيل
vim --version
وسترى أنه قد تم تجميعه بواسطة[email protected]
.2) اخترت إلغاء تثبيت النسخة المخمرة من python @ 2 ، وقمت بتثبيت python عبر الشراب (يتم تثبيته 3.7.0 افتراضيًا في وقت كتابة هذا التقرير) ، ولم أقم بربطه. فقط تركها هناك. اقرأ بعض المنتديات التي تفيد بأنه لا يتم تجميعه باستخدام brew python ما لم يتم تثبيته. @ ZyX - ربما كنت تعرف المزيد عن هذا؟
3) بعد
brew install python
، استخدم البيرة لتثبيت vim باستخدام الأمرbrew install vim
. ثم قم بتشغيل/usr/local/bin/vim --version
وتأكد من وجود علامة "+" بجانب python3. أعد تشغيل الصدفة ، ومن ثم يجب قراءة /.vimrc:/Library/Python/2.7/site-packages/powerline/powerline/bindings/vim/
أو أيًا كان المسار الذي تبحث عنه..... ويجب أن تعمل!
تحرير: بعض القواعد ، كتب هذا بدون قهوة.