আইপিথন 5 ব্যবহার করার সময় অদ্ভুত শেল আউটপুট


37

আমি স্রেফ আইপিথনের সর্বশেষতম সংস্করণে আপগ্রেড করেছি এবং ইমাসে এটি ব্যবহার করার সময় এখন কিছু ভুল।

যখন একটি নিয়মিত টার্মিনাল এটা ব্যবহার করে এটি জরিমানা (রং, ট্যাব-সমাপ্তি, ইত্যাদি), কাজ করে তবে পারেন M-x eshellবা M-x shell, outputing পরিবর্তে In [1]:, এটি একটি প্রকৃত আউটপুট [?12l[?25hএবং Out[1]আউটপুট [J[?7h[?12l[?25h[?2004l[?7hOut[1]:

হতে পারে এটি টার্মিনালের কিছু বৈশিষ্ট্য আইপিথন দ্বারা ব্যবহৃত ইমাসে পাওয়া যায় না, তবে আমি এটি কোনটি তা জানতে চাই।

Terminal.app:

In [1]: 2+2
Out[1]: 4

এ গিয়ে emacs

[?12l[?25h2+2
[J[?7h[?12l[?25h[?2004l[?7hOut[1]: 4

আপনি কি উজানে কোনও বাগ খুলেছেন? আমি কিছুই খুঁজে পেলাম না, তবে এটি আবার জেনেমানের সাথে এটিএম অনুসন্ধান করাও কিছুটা শক্ত।
রসমাস

2
রেফারেন্সের জন্য, আপস্ট্রিম বাগটি # 25306
এনপোস্টাভগুলি

উত্তর:


41

আইপথন 5 এর একটি নতুন টার্মিনাল ইন্টারফেস রয়েছে, যা ইম্যাকসের নিকৃষ্ট শেলগুলির সাথে সামঞ্জস্য নয়। এটি ঠিক করতে, --simple-promptআইপিথন কমান্ডে পতাকাটি যুক্ত করুন :

(setq python-shell-interpreter "ipython"
    python-shell-interpreter-args "--simple-prompt -i")

ডকুমেন্টেশন থেকে:

নতুন ইন্টারফেসটি ইমাসের 'নিকৃষ্ট-শেল' বৈশিষ্ট্যের সাথে সামঞ্জস্যপূর্ণ নয়। এটি ব্যবহার চালিয়ে --simple-promptযাওয়ার জন্য, ইমাক্স কমান্ডটিতে পতাকাটি যুক্ত করুন । এই পতাকাটি বেশিরভাগ আইপিথন বৈশিষ্ট্যগুলি অক্ষম করে, ট্যাব সমাপ্তির মতো জিনিস সরবরাহ করতে ইম্যাক্সের উপর নির্ভর করে।

তথ্যসূত্র: http://ipython.readthedocs.io/en/stable/whatsnew/version5.html#id1


6
হ্যাঁ, আমি প্রথমে এটিই করেছি, তবে মাল্টলাইন সমর্থনের অভাব (ফাংশন সংজ্ঞাগুলির জন্য সর্বাধিক গুরুত্বপূর্ণ) আমাকে আইপিথন 4-এ ফিরিয়ে আনতে বাধ্য করেছে It আইপিথন 5 এমএক্স টার্মের সাথে সূক্ষ্মভাবে কাজ করে যদিও এটি লক্ষ করা উচিত।
আক্ষরিক

3
ভেরিয়েবলের মাধ্যমে যদিও এই পতাকাটি সেট করা এলপির সাথে এখনও বেশ কার্যকর python-shell-interpreter-args। আপনি যদি এলপিকে চেষ্টা না করে থাকেন তবে আপনার এটি পরীক্ষা করা উচিত। এটি আপনাকে একটি পৃথক বাফারে আপনার ফাংশন সংজ্ঞা লিখতে এবং কেবল একটি কমান্ডের সাহায্যে এটিকে সহজেই দোভাষীর কাছে পাঠাতে দেয়। এই ক্ষেত্রে, আপনি সমস্ত ইমাক্সের সম্পাদনা কমান্ডের সমস্তটি ব্যবহার করতে পারেন এবং একটি ইন্টারেক্টিভ সেশন পেতে পারেন - উভয় বিশ্বের সেরা।
রিকার্ডো লিমা

1
@ লিটারেলের কারণটিতে লিঙ্কটিতেও লিখিত রয়েছে: তারা আইপিথন 5 এ ব্যবহার readlineকরা থেকে পরিবর্তিত হয়েছে E এটি ইমাকস শেলগুলির সাথে সামঞ্জস্যপূর্ণ নয়, যা এর থেকে আলাদাভাবে কাজ করে : যতদূর আমি জানি, শেলগুলি আরও বেশি পছন্দ করার কাজ করার উদ্দেশ্যে বোবা টার্মিনাল চালায় run একটি স্ট্যান্ডার্ড ইম্যাক্স বাফার, যেখানে একটি প্রকৃত পূর্ণ টার্মিনাল এমুলেটর চলে। মনে হয় শাঁসগুলি এর সাথে সামঞ্জস্যপূর্ণ তবে এটির সাথে নয় , যা পালানোর ক্রমগুলি প্রদর্শন করার প্রম্পটটি ব্যাখ্যা করবে। যেহেতু একটি সম্পূর্ণ টার্মিনাল চালায়, এটি সঠিকভাবে পালানোর ক্রমগুলি ব্যাখ্যা করে। prompt_toolkitprompt_toolkittermtermreadlineprompt_toolkitterm
রিকার্ডো লিমা

1
আমি এটি গ্রহণ করিনি কারণ আমি অন্যান্য বৈশিষ্ট্যগুলি ধরে রাখতে পছন্দ করতাম সম্ভবত আরও বৈশিষ্ট্যযুক্ত অন্য শেল মোড ব্যবহার করে। তবে আমার ধারণা আমার সাথে এটি থাকতে হবে।
আক্ষরিক

1
@ কোডিচান এটি ইউআই সম্পর্কিত আইপিথন বৈশিষ্ট্যগুলি অক্ষম করে, যেমন সম্পূর্ণতা, রঙ ইত্যাদি It এটি% ম্যাজিক কমান্ড, ইনপুট / আউটপুট ইতিহাস, শেল কমান্ড,? সহায়তা আদেশ ইত্যাদি ইত্যাদি জিনিস রাখে
জেপকোট

0

- সিম্পল-প্রম্পট ব্যবহার না করে ইমা্যাকস শেলের আইপিথন খোলার একটি উপায় রয়েছে

1. pip install rlipython

2. Open IPython in terminal

3. Run import rlipython; rlipython.install() 

এর পরে, আপনি ডিসপ্লে সমস্যাটি না ভেবে সরাসরি আইপ্যাথনটি ইম্যাক্স শেলটিতে খুলতে সক্ষম হবেন।

যদিও আমার ক্ষেত্রে আরও একটি সমস্যা রয়েছে: কোনও কারণে, ডিসপ্লে সঠিক হওয়ার পরেও, আমি এখনও কিছু মাল্টি-লাইন শ্রেণীর সংজ্ঞাগুলি সরাসরি ইম্যাক্স শেলের আইপিথনে অনুলিপি করতে পারি না। আমার বর্তমান সমাধানটি আইপিথন% পেস্ট কমান্ডটি ব্যবহার করা। আপনার যদি আরও ভাল পন্থা থাকে তবে দয়া করে আমাকে জানান।

PS: আমি উবুন্টু 16.04 ব্যবহার করছি। কেউ ম্যাকওএস ব্যবহার করে বলে এটি আইপথন ভেঙে দেয়।



এটি আইপথন ইনস্টলেশনটিকে দূষিত করে
ডায়োগো

কোন পথে? এটি আমার পক্ষে ভাল কাজ করে
ডেটহ্যাংগ্রি

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.