Powerline: دعم Gnome 3.22

تم إنشاؤها على ١ أكتوبر ٢٠١٦  ·  44تعليقات  ·  مصدر: powerline/powerline

هذا ما أراه بعد ترقية Gnome 3.22:

output

ctmux linux sforeign bug bug

التعليق الأكثر فائدة

نظرًا لأن هذا لا يزال يمثل مشكلة ، فقد يواجه مستخدمو OS X / macOS في إصدار جديد من iTerm2 هذه المشكلة إذا تم تعيين ملف التعريف الخاص بك لاستخدام عرض Unicode الإصدار 9 char - الحل البديل هنا هو فقط إلغاء تحديد مربع الاختيار هذا ضمن التفضيلات -> الملفات الشخصية -> نص -> Unicode.

ال 44 كومينتر

يحدد Powerline ما سيتم عرضه ، وكتابة هذا بشكل صحيح إلى الجهاز هي مسؤولية tmux. تبدو لقطة الشاشة الخاصة بك كما لو كانت موجودة

  1. يعتقد tmux بشكل غير صحيح أن المحطة الطرفية هي خلية واحدة أوسع مما هي عليه في الواقع.
  2. هناك حرف واحد يعتقد tmux أنه ذو خلية واحدة ، ويعتقد المحاكي الطرفي أنه بعرض خليتين.

لا تستطيع Powerline فعل أي شيء مع هذا. يمكنك حل المشكلة باختيار مجموعة أخرى من الأحرف (على سبيل المثال ، قم بتعيين سمة المستوى الأعلى إلى ascii أو اكتشف وتجاوز حرف واحد فقط مسيء) ، ولكن هذا خطأ في tmux.

يبدو أن frol موجود على Gnome أيضًا. لم أواجه أي مشاكل مع tmux 2.3.1 الذي تم تحديثه وفقًا لمديري حزم Arch في 30 سبتمبر. يبدو أنه مشكلة في محطة Gnome وربما خط الطاقة بسبب بعض الأخطاء الغامضة. يعمل tmux بدون powerline بشكل جيد في Gnome 3.22.

يعمل بشكل جيد مع urxvt!

في تغيير powerline.json:

image

إلى

            "time": {
                    "before": " "
            },

mrmodolo نعم ، هذا يساعد!

burningTyger أستخدم testing ، لذلك حصلت على Tmux 2.3.1 و Gnome 3.22 في نفس اليوم واعتقدت أنه كان عدم توافق Tmux ، لكن يبدو أنني كنت مخطئًا.

mrmodolo ، رمز الساعة هو الجاني ولكن الرمز الآخر غير متوفر في خط powerline الخاص بي ، لذلك تركت السلسلة السابقة فارغة مما يحلها الآن أيضًا. شكرا لك.

في التكوين الخاص بي ، "" هو حرف UTF8 char f017 .
يمكنك طباعة الرمز في VIM:
التغيير إلى وضع الإدراج ؛
CTRL + v ثم اكتب uf017

ما هو رمز Unicode الذي يمثل رمز الساعة الذي يسبب مشاكل (في لقطة شاشة ذات خلفية صفراء في تعليق سابق)؟

(ملاحظة: U + F017 في منطقة الاستخدام الخاص ، على نظامي يظهر بشكل مشابه لرمز التلدة (~) ، ولكن ربما يكون هذا هو الرمز الذي يظهر كساعة على نظامك؟ إذا كان الأمر كذلك ، فماذا فعل @ يوصي

$ printf "٪ d \ n" \ 'image
8986
صدى $ "obase = 16 ؛ 8986" | قبل الميلاد
231 أ

في نوع VIM:
CTRL + v ثم اكتب uf231A

الآن لدي هذا!
image
أنا أستخدم Arch ، لكن Ubuntu يستخدم  in powerline افتراضيًا!

لذلك ... هل أفهم ما يلي:

  • مع U + 231A يعمل بشكل غير صحيح ،
  • مع U + F017 بدلاً من ذلك في نفس الموضع هل تعمل بشكل صحيح؟

(أم أن العكس هو الصحيح؟ آسف لأنني ضائع تمامًا.)

في حالتي ، U + F017 في نفس الموضع يعمل بشكل جيد!
ملف التكوين الخاص بي هو:

"زمن": {
"قبل": ""
} ،

عند قراءة تقرير الأخطاء الطرفي في جنوم أولاً ، اعتقدت أنه كان موجهًا لخط باش / zsh أساء التصرف. بالنظر إلى التسجيل هنا ، يبدو لي أنه شريط حالة powerline tmux.

هل يمكن لشخص ما أن يوجهني إلى أقصر الوثائق التي يجب أن أتبعها لتهيئة tmux إلى خط الطاقة (حتى أتمكن من إعادة إنتاج هذا الخطأ)؟ لم أستخدم خط powerline مطلقًا ، وأنا بالكاد على دراية بـ tmux أيضًا ، وتقدم Google الكثير من النتائج. يسعدني تصحيح هذه المشكلة ، لكن ليس لدي الوقت للتعرف على نظام powerline البيئي. شكرا لك مقدما!

أنا أستخدم القوس ...
yaourt -S python-powerline

في .tmux.conf ...
run-shell "powerline-daemon -q"
المصدر "/usr/lib/python3.5/site-packages/powerline/bindings/tmux/powerline.conf"

إذا كانت المشكلة مع tmux تفكر في أن U + 231A أوسع ، فإن محطة GNOME تعتقد أنه يجب أن تكون المشكلة قابلة للتكرار تمامًا بدون خط الطاقة على الإطلاق: فقط اجعل بعض الخيارات status- تحتوي على هذا الرمز (ملاحظة: لست متأكدًا مما إذا كان وما هي تحسينات العرض التي يستخدمها tmux ، لذلك يجب أن يحتوي status-right على شيء ما).

اشكرك على المعلومات!

أنا على Ubuntu Yakkety (gtk + gnome 3.20 / glib 2.50.0 [الذي ينتمي إلى gnome 3.22] / glibc 2.24) مع tmux-2.3 و gnome-terminal / vte git مجمعة يدويًا. لا يمكنني إعادة إنتاج هذا الخطأ (لا باستخدام خط الطاقة ولا باستخدام حق الحالة البسيط).

إذا كانت المشكلة مع tmux تفكر في أن U + 231A أوسع فإن محطة جنوم تعتقد ذلك

هذا لا يفسر المشكلة الحالية. ثم ستطبع tmux حرفًا واحدًا أقل (لأنه يعتقد أن واحدًا أكبر) وبالتالي لن يملأ العرض بالكامل. أعتقد أن الأمر عكس ذلك: يعتقد tmux أنه شخصية عادية ، بينما يعتقد gnome-terminal أنه مزدوج العرض. ومن ثم يفيض.

كما هو مذكور في https://bugzilla.gnome.org/show_bug.cgi؟ .

هل يمكنك تجربة هذه:

echo $'\u231A' | wc -L

هذا يطبع wcwidth () glibc ، أفترض أن الإخراج سيكون 1.

echo ABCDE; echo a$'\u231A'cde

هل تتم محاذاة الأحرف الكبيرة والصغيرة بشكل صحيح؟ أعتقد أنهم يفعلون ذلك في xterm ، بينما في gnome-terminal لا يفعلون ذلك (تحتل الساعة خليتين).

هل يمكنك من فضلك مشاركة نسختك من glib و glibc؟ تخميني الجامح هو أن لديك glib 2.50.1 الخاص به يقول سجل التغيير "تحديث دعم Unicode إلى Unicode 9.0.0" وربما زاد Unicode 9.0.0 من عرض نقطة الشفرة هذه.

يبدو أن تخميني الجامح كان صحيحًا:

ftp://ftp.unicode.org/Public/8.0.0/ucd/EastAsianWidth.txt

2313..231F;N     # So    [13] SEGMENT..BOTTOM RIGHT CORNER

ftp://ftp.unicode.org/Public/9.0.0/ucd/EastAsianWidth.txt

2313..2319;N     # So     [7] SEGMENT..TURNED NOT SIGN
231A..231B;W     # So     [2] WATCH..HOURGLASS
231C..231F;N     # So     [4] TOP LEFT CORNER..BOTTOM RIGHT CORNER

أصبحت نقاط الشفرة للساعة والساعة الرملية (وربما أكثر بكثير) واسعة بواسطة Unicode 9.0.0.

يستخدم gnome-terminal العرض الجديد إذا كان يعمل مع glib 2.50.1 أو أحدث ، بينما يعتمد xterm و tmux على glibc الذي لا يزال إصداره الأخير (2.24) يستخدم العرض القديم.

لا يمكنني العثور على تقرير أخطاء gnome-terminal المرتبط هنا ، لذا فهو هنا كمرجع لك:
https://bugzilla.gnome.org/show_bug.cgi؟id=772812
https://bugzilla.gnome.org/show_bug.cgi؟id=772890

هل تتم محاذاة الأحرف الكبيرة والصغيرة بشكل صحيح؟ أعتقد أنهم يفعلون ذلك في xterm ، بينما في gnome-terminal لا يفعلون ذلك (تحتل الساعة خليتين).

هناك خلل آخر محتمل لدي مع هذا الرمز: يعتقد كل من konsole و tmux أنه خلية واحدة بعرض خلية واحدة ، لكن مكتبة عرض الخط ليست (لا يمكن أن تكون؟) مُخبرة لتوسيع نطاقها في خلية العرض هذه (الصورة الرمزية الفعلية مأخوذة من خط آخر لأن النهاية لا تحتوي على هذا الحرف الرسومي) ، مما ينتج عنه شيء مثل

e is off compared to E

. هذا _ لا _ يؤدي إلى المشكلات التي يواجهها الأشخاص هنا ، ولكن هذا قد يجعل اختبارك يسفر عن نتائج غير صحيحة.

كونسول هو المحاكي الوحيد الذي أدرك أنه يفعل هذا الجنون لعدم التوافق مع الخلايا.

في جميع المحاكيات الأخرى ، قد يتجاوز رمز الساعة إلى خلية c ، لكن الحروف ستكون أسفل بعضها تمامًا: إما Cc أو Dd أو Ee أو (كما أتوقع في gnome-terminal مع glib-2.50 .1) سيتم محاذاة Dc و Ed.

لدي نفس المشكلة على Termite ، مع Arch x86 + tmux. ومع ذلك ، فإن تحرير رمز الساعة في السمات / powerline.json لا يغير أي شيء.

ظهر اليوم في Debian Stretch (اختبار). أنا أستخدم LXDE و Tilda.
إصدار tmux 2-3-1
إصدار تيلدا 1.3.1-1 + b1

لا أعرف حقًا أي حزم glib / glibc تهتم بها ، لذلك قمت بعمل لقطة شاشة:
zrzut ekranu z 2016-10-19 14-10-01

تحديث: هذا هو _Liberation Mono لخط Powerline_ ، لكن الإخراج من _Linux Libertine Mono_ هو نفسه (وآخرون أيضًا ، على ما أعتقد).

تحرير: تحرير رمز الساعة (U + 231A أو U + F017) لا يعمل بالنسبة لي أيضًا. أي اقتراحات؟
تحرير 2: في لقطة الشاشة الخاصة بي ، أخطأت في استخدام wc -l بدلاً من wc -L ، لكن في هذا المثال الإخراج هو نفسه. 1.
Edit3: أخيرًا ، يعمل tmux + powerline مرة أخرى ، شكرًا لك! تم حذف تسجيل الساعة من/ usr / local / lib / ... ، كما هو مذكور أعلاه ومن الملف المحلي للمستخدم الخاص بي بتنسيق
~/.local/lib/python2.7/site-packages/powerline/config_files/themes/powerline.json
بعد إعادة تشغيله يعمل مثل السحر.

dunemkk ، ماذا تقصد بحذف الساعة تسجيل الدخول / usr / local / lib؟

@ s0r00t بلدي سيئة. تحديث تعليقي.
الآن أرى أن هذا الموقع لم يذكر على الإطلاق.

في البداية ، لم أكن أعرف حتى أن لدي ملف powerline.json في دليل المستخدم الخاص بي. لقد وجدت هذا الملف بتنسيق
/usr/local/lib/python2.7/dist-packages/powerline/config_files/themes/powerline.json
(منذ أن استخدمت خط ربط موقع مماثل لـ zsh / tmux / vim) ولم أزعج نفسي بالتحقق مما إذا كان في مكان آخر في نظامي. ربما هذا هو السبب في أنها لم تنجح. ؛ ص

ساعدني التزام ahaasler: https://github.com/ahaasler/dotfiles/commit/aafef1f7a0b5a1d398c8ac33062b5d223b9a25a6

شكرا ، أصلحته.

عملت مثل السحر.
لمعلوماتك: U + 23F2 مع وجود مسافتين خلفهما ، يبدو تمامًا مثل القديم (باستثناء أنه غير مكسور). فقط مع ساعة توقيت بدلا من ساعة.

أحرف الأحرف الأخرى الممكنة ، ولكن التي لم يتم اختبارها هي:
U + 23F0 (منبه)
U + 1F570 (ساعة الموقد)
U + 1F570 إلى U + 1F567 (وجوه ساعة div.)

شكرا للعمل حول!

نظرًا لأن هذا لا يزال يمثل مشكلة ، فقد يواجه مستخدمو OS X / macOS في إصدار جديد من iTerm2 هذه المشكلة إذا تم تعيين ملف التعريف الخاص بك لاستخدام عرض Unicode الإصدار 9 char - الحل البديل هنا هو فقط إلغاء تحديد مربع الاختيار هذا ضمن التفضيلات -> الملفات الشخصية -> نص -> Unicode.

وجود هذه المشكلة فجأة على ubuntu 16.10 - لم يحدث هذا الأسبوع الماضي. عجيب. ربما تغير شيء ما أثناء تحديث apt-get أو ترقية النقطة ، لا تتذكر.

إذن ما هو الإصلاح الرسمي؟

binarykitchen هنا منذ أمس أيضًا!

وجدت حلا

cp /usr/share/powerline/config_files/themes/powerline.json ~ / .config / powerline / theme /

ثم قم بتحرير ~ / .config / powerline / theme / powerline.json وابحث عن كتلة تقول:

                "time": {
                        "before": "  "
                },

لقد استبدلت قيمة "قبل" بـ ""

CVirus شكرا ولكن في حالتي ، كان هناك بالفعل شار ساعة.

لكن لم يكن لدي ملف json في مجلد .config الخاص بي ... هل يمكن أن يكون هذا هو السبب؟

وتشير بعض التعليقات الموجودة أعلى هذا الموضوع إلى إزالة حرف الساعة أو استبداله. مشوش.

binarykitchen استبدل الساعة التي لديك بالساعة التي قمت بلصقها أو أي شخصية أخرى

CVirus سيفعل - للتوضيح ، هل يجب علي إعادة تشغيل شيء ما بعد استبدال الشخصية؟ جهازي ، جلسة zsh؟

ولكي نكون واضحين ، هذا يحدث فقط خلال جلسة tmux لخادمي البعيد. وأنا أقوم فقط بتصحيح json من جانبي ، العميل ، وليس من جانب الخادم.

دعني اعرف ...

binarykitchen تحتاج إلى إعادة تشغيل أي عملية يعيش فيها ليس shell أو tmux. على الرغم من أن zsh خاص هنا: إذا كان لديك zpython مثبتًا ، فإن powerline سيعيش داخل عملية shell. ليس من المرجح أن يحدث هذا إلا إذا قمت بتثبيت zpython بنفسك.

@ ZyX-I شكرًا - ليست لدي فكرة عما إذا كان لدي zpython مثبتًا وراجع للشغل ، لقد قمت بتثبيت powerline عبر apt-get ، وليس pip.

وأعد سؤالي الأخير: "هذا يحدث فقط أثناء جلسة tmux لخادمي البعيد" - كيف يمكنني معرفة ما إذا كانت مشكلة powerline على جانب العميل أو الخادم؟

binarykitchen مهما كان التطبيق الذي يستخدم

@ ZyX-I "أيا كان التطبيق الذي يستخدم خط الطاقة ، فإنه يستخدم خط الطاقة على الجانب الذي يتم تشغيله."

-> مشكلتي هي أنه عندما أقوم بتشغيل جلسة ssh عبر tmux بدأت أعتقد أنها مشكلة في تثبيت powerline على جانب الخادم. ولكن كلما قرأت المزيد عن powerline ، أعتقد أنها مشكلة من جانب العميل. إنها مجردة حقًا ...

أعدت تشغيل جهازي ولا يزال الخطأ يحدث - هل هناك أدلة أخرى؟ يزداد اليأس هنا ...

إذا لم أتمكن من الحصول على جلسة ssh مناسبة قريبًا للتحقق من الخادم الخاص بي ، فسأضطر إلى إلغاء تثبيت powerline :(

لقد استخدمت للتو ساعة الإيقاف بدلاً من الساعة لإصلاح ذلك. لذلك في /usr/share/powerline/config_files/themes/powerline.json ، قمت بتغيير هذه الخطوط

"time": {
    "before": "◴ "
},

إلى

"time": {
    "before": "⏱ "
},

binarykitchen التكوين مأخوذ من خط

إذا لم تقم بتكوين السمات ، فما عليك سوى تحديث جميع خطوط الطاقة لتطوير الإصدار ، فإنه يستخدم الآن سمة بدون رموز إشكالية افتراضيًا.

حاولت إصلاح ساعة الإيقاف ولكن لا ، لم يساعد ذلك

أعتقد أنني سأقوم بإلغاء تثبيت باورلاين - آسف يا شباب

binarykitchen ربما استخدم مساحة بدلاً من أي أيقونات ساعة.

binarykitchen مجرد تغيير الملف لا يكفي. يجب عليك أيضًا جعل powerline يستخدم التكوين الجديد (ربما يكون إعادة التشغيل أسهل). ربما يكون برنامج powerline-daemon يستخدم الإعدادات القديمة ، لذا فإن القتل قد يعمل أيضًا ، لكنني لست متأكدًا.

@ liuhuiping2013 هل قرأت حتى التعليقات أعلاه؟

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات