এক্সকোড সদৃশ লাইন


127

সেখানে হয় একটি Duplicateসম্পাদনা মেনু (একটি ডিফল্ট শর্টকাট দিয়ে কমান্ড D), কিন্তু এটা (যেমন হ্যালি নির্দিষ্ট) Xcode এর ইন্টারফেস বিল্ডার অংশে অনুলিপি জন্য বোঝানো।

সুতরাং, আপনি কীভাবে ( সহজেই ) এক্সকোড 4-তে একটি লাইন নকল করবেন?


এক্সকোড 3 এর জন্য সম্পর্কিত প্রশ্ন (একটি কাজের উত্তর সহ) ... এবং যা এক্সকোড 4 এর জন্য কাজ করে না।


কেন শুধু কপি এবং পেস্ট করবেন না?

কারণ এটি ক্লান্তিকর এবং অত্যধিক হ্যান্ড-অ্যাক্রোব্যাটিকস জড়িত:

হয় (1) : লাইনের শুরুতে সরানো এবং তারপরে টিপুন ⇧^E, তারপরে অনুলিপি করা ⌘C, নতুন লাইনে চলে যাওয়া, কার্সারকে সংযুক্ত করা এবং অবশেষে সাথে আটকানো ⌘V;

বা (২) : ^A(লাইন বেইনিংয়ের জন্য কার্সার সেট করুন), ^SPACE(সেট চিহ্ন), ^E(কার্সারটিকে লাইন এন্ডিংয়ে সেট করুন), ⇧^W( Select to Mark; কাস্টমাইজড), অনুলিপি, নতুন লাইন ইত্যাদি

যেমনটি ফ্র্যাঙ্ক শ্র্রেডার ( সম্পর্কিত প্রশ্নে ) লিখেছেন :

পুরো পয়েন্টটি সিএমডি-সি / সিএমডি-ভি শর্টকাট ব্যবহার করা নয়।


1
লাইন এবং কপি পেস্ট নির্বাচন করুন?
দানি

1
@ দানি, সিপি খুব বেশি কাজ (এবং লাইন ডুপ্লিকেশন এমন কিছু নয় যার জন্য প্রয়োজন খুব কমই দেখা দেয়)। :) আমি প্রশ্ন আপডেট করেছি।
ব্লেজ

1
কমান্ড-ডি ইন্টারফেস বিল্ডারে নিয়ন্ত্রণ নকলের জন্য।
হাইলি

@ হ্যালি, এটি জেনে রাখা ভাল। এবং এটি ⌥-মাউস-ড্রাগের সমতুল্য (যা ইন্টারফেসের উপাদানগুলিও অনুলিপি করে)?
ব্লেজ

@ সৌম্য আমিও তাই মনে করি। Disanji.net/iOS_Doc/#docamentation/DeveloperTools/Concepual/… এ সংশোধক কী বিভাগে বলা হয়েছে যে "ড্রাগ-এন্ড-ড্রপ ক্রিয়াকলাপের সময় অপশন কী টিপলে নির্বাচিত বস্তুগুলিকে সরানোর পরিবর্তে অনুলিপি করে।"
হাইলি

উত্তর:


173
  1. এই ফোল্ডারে যান যাতে বাহিনীর অন্ধকার দিক রয়েছে:

    • এক্সকোড ৪.২ বা তার আগে: /Developer/Library/PrivateFrameworks/IDEKit.framework/Resources
    • Xcode 4.3 বা পরবর্তী: /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources
  2. খোলা IDETextKeyBindingSet.plist

  3. নীচের স্ক্রিনশট হিসাবে একটি নতুন অভিধান এবং একটি নতুন কমান্ড আইটেম যুক্ত করুন (আপনি যা চান তার নাম দিন): প্লিস্ট সম্পাদনা করা হচ্ছে

    করে: selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:

  4. এক্সকোড পুনরায় চালু করুন এবং পছন্দগুলি - কী বাইন্ডিংগুলিতে যান, আপনার আদেশটি সন্ধান করুন।

  5. কমান্ডের জন্য একটি মূল সমন্বয় সেট করুন: কী বাঁধাই

  6. শেষ পর্যন্ত এক্সকোডে কী-র বাইন্ডিংগুলির শক্তি প্রকাশ করেছে ... এটি উপভোগ করুন!


3
@ মিচালস্টেফানো, আপনি যে অবস্থানটি লিখেছেন তা হ'ল ঠিক একই অবস্থান যা উরফ /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resourcesনির্দেশ করেছে। অন্যথায়, আমি সংস্করণ ৪.৩.২ এ হ্যালির পদক্ষেপগুলি সফলভাবে অনুসরণ করেছি ... আমি আপনাকে মূল ফাইলটি ব্যাক আপ করার পরামর্শ দিই এবং তারপর এটি এক্সকোডে নিজেই খোলার (এবং টেক্সটএডিটে নয়)। এছাড়াও, অনুমতিগুলি সম্পর্কিত: ফাইন্ডারে এগুলি (কেবলমাত্র ফাইলের জন্য; কোনও পুনরাবৃত্তির প্রয়োজন নেই) ঠিকঠাক কাজ করেছে।
ব্লেজ

29
বড় থান! অলস ব্যবহারকারীদের জন্য - নির্বাচন করুন লাইন:, অনুলিপি :, মুভটোওএন্ডলাইন :, সন্নিবেশ করুন নিউইলাইন :, পেস্ট :, মুছুনব্যাকওয়ার্ড:
ভ্লাদ স্লেপ্লেভ

15
যদি আপনার এক্সকোড ক্রাশ হয়! এক্সকোড বন্ধ করুন, যে কোনও পাঠ্য সম্পাদক দিয়ে ফাইল খুলুন এবং আপনার <key>Custom</key> <dict> <key>Duplicate Current Line</key> <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string> </dict>
অভিধানটি

2
এক্সকোডে আমার জন্য কাজ করে 4.4.1! অনুমতি পরিবর্তন করতে কিছু সমস্যা হয়েছিল (সন্ধানকারী বা chmod 777 এবং কোনও কারণে টার্মিনাল থেকে সুডো দিয়ে কাজ শুরু হয়নি)। আমি ফাইলটি অন্য কোথাও অনুলিপি করেছিলাম, সম্পাদনা করেছি এবং মূল কাজটি ওভাররাইট করেছিলাম that
আইএক্সএক্স

2
আমি অ্যান্ড্রয়েড ডেভ এবং আমি যখন আইও দেব চেষ্টা করতে শুরু করি তখন বুঝতে পারি যে অ্যান্ড্রয়েড স্টুডিও (বা ইন্টেলিজ ধারণা) কীভাবে ভাল।
ইলিয়াআরমিন

90

আপডেট 2020

এক্সকোড সংস্করণগুলিতে কাজ করে: 11.3.1 এও

এক্সকোড সংস্করণগুলিতে কাজ করে: 7.1, 7.3, 7.3.1, 8.0, 8.1, 8.2, 8.3, 9.0, 9.1, 9.2, 10.0, 10.1, 10.2.1

নির্দেশ

  1. নিম্নলিখিত ফাইলগুলি সম্পাদনা করার অনুমতি দিন। বেশিরভাগ সময় ওএস আপনাকে ফাইল সম্পাদনা করার অনুমতি দেয় না।

11.3.1 সংস্করণ

sudo chmod 666 /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources//IDETextKeyBindingSet.plist

sudo chmod 777 /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources/

11.3 সংস্করণ নীচে


sudo chmod 666 /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist

sudo chmod 777 /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/
  1. নিম্নলিখিত কমান্ডটি লিখে ফাইলটি সম্পাদনা করুন: (যদি পারেন তবে এটি সূক্ষ্ম বা পাঠ্য সম্পাদককে খুলুন)

11.3.1 এর জন্য

open  

/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources/

নীচের সংস্করণ জন্য

open /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources/IDETextKeyBindingSet.plist
  1. নিম্নলিখিত এক্সএমএল স্নিপেটগুলি যুক্ত করুন:
<key>custom</key>
<dict>
    <key>Duplicate Current Line</key>
    <string>moveToBeginningOfLine:, deleteToEndOfLine:, yank:, insertNewline:, moveToBeginningOfLine:, yank:</string>
    <key>Duplicate Lines</key>
    <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string>
    <key>Delete Line</key>
    <string>selectLine:, deleteBackward:</string>
</dict>

স্ক্রীনশট

এখানে চিত্র বর্ণনা লিখুন

এবং এক্সকোড পুনরায় আরম্ভ করুন এবং এতে যান Preferences - Key Bindings, আমরা যে কমান্ডটি টাইপ করেছি তার সন্ধান করুন (ডুপ্লিকেট লাইন এবং নকল কারেন্ট লাইন)।

এখানে চিত্র বর্ণনা লিখুন

এটাই.

ইউনিক্স লোকেদের মনে রাখবেন: -

sudo chmod 755 /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources/ 

এটি যাদুমন্ত্রের মত কাজ করে! আমি সম্পাদনা করে IDETextKeyBindingSet.plistউপরের অভিধানটি যুক্ত করেছি এবং এরপরে এক্সকোডের পছন্দসমূহে কীগুলি ম্যাপ করেছি।
রান্ডিকা বিষ্মান

3
এগুলি ম্যাক ব্যবহারকারীদের যে নির্বোধ উত্তরগুলি প্রয়োজন!
লুকা দাভানজো

1
উপর XCode 10.1 জন্য, আমি নিম্নলিখিত স্ট্রিং ব্যবহার ছিল: moveToBeginningOfLine :, deleteToEndOfLine :, Yank :, insertNewline :, setMark :, moveToBeginningOfLine :, selectToMark :, Yank: । থেকে @tmsimont বিগ ধন্যবাদ
marcelosalloum

1
এই যে কোনও সময় আমি গুগল যে কোনও সময় এক্সকোড আপডেট করা হয়।
বিকাশকারী

1
এই সমাধানটি গ্রহণযোগ্য উত্তরের চেয়ে আমার পক্ষে কাজ করে
খালিদ

18

ঠিক আছে, আমি এটি নিয়ে এসেছি:

এক্সকোড 11 এর জন্য সংস্করণ:

selectParagraph:, delete:, undo:, moveRight:, yankAndSelect:
  • ক্লিপবোর্ড স্পর্শ করে না
  • একাধিক লাইন নিয়ে কাজ করে
  • যুক্ত লাইনগুলি নির্বাচন করে, তাই পুনরায় নির্বাচিত না করে একাধিকবার ব্যবহার করা যেতে পারে
  • এক্সকোড 11 এ স্থির নির্বাচন
  • পূর্বাবস্থার সাথে আরও ভাল কাজ করে

যেহেতু আমি প্রতিটি এক্সকোড আপডেটের পরে এই পরিবর্তনটি প্রয়োগ করছি, আমি তার জন্য একটি স্ক্রিপ্ট তৈরি করেছি। সম্ভবত এটি কিছু ক্ষতি হতে পারে তবে আমি এটি তুলনামূলকভাবে নিরাপদ করার চেষ্টা করেছি। এটি ফাইলটির একটি অনুলিপি তৈরি করে এবং তারপরে লাইনটি তার অনুলিপি এবং পার্ল ব্যবহার করে অতিরিক্ত কমান্ডের সাথে প্রতিস্থাপন করে। XCode এ ইনস্টল করা প্রয়োজন/Applications/Xcode.app

cp /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist ~/Desktop/IDETextKeyBindingSet.plist; sudo perl -pi -e 's/\<string\>selectWord:\<\/string>/'$'\<string\>selectWord:\<\/string\>\n\t\t\<key\>Duplicate Selection\<\/key\>\n\t\t\<string\>selectParagraph:, delete:, undo:, moveRight:, yankAndSelect:\<\/string>/g' /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist

পুরানো সংস্করণ (নতুন সংস্করণটি পুরানো সংস্করণের সাথে সামঞ্জস্যপূর্ণ কিনা তা আমি নিশ্চিত নই, তাই আমি এটি এখানে রাখব):

selectParagraph:, delete:, yank:, moveToBeginningOfLine:, setMark:, yank:, moveToBeginningOfLine:, moveLeft:, selectToMark:

ম্যানুয়াল ফাইল সম্পাদনা এড়াতে পুরানো সংস্করণের স্ক্রিপ্ট:

cp /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist ~/Desktop/IDETextKeyBindingSet.plist; sudo perl -pi -e 's/\<string\>selectWord:\<\/string>/'$'\<string\>selectWord:\<\/string\>\n\t\t\<key\>Duplicate Selection\<\/key\>\n\t\t\<string\>selectParagraph:, delete:, yank:, moveToBeginningOfLine:, setMark:, yank:, moveToBeginningOfLine:, moveLeft:, selectToMark:\<\/string>/g' /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist

সম্পাদনা: মাইনর ফিক্স এডিট 2: অনুচ্ছেদে নির্বাচন সম্পাদনা এডিট 3 এ পরিবর্তিত হয়েছে: এক্সকোড 11 এর জন্য যুক্ত সংস্করণ


এই সংমিশ্রণটি খুঁজছেন, এটির জন্য সত্যই ধন্যবাদ। এটি অবাঞ্ছিত নতুনলাইনগুলি যুক্ত না করে একক লাইন বা একাধিক লাইনগুলি নকল করতে পারে এবং ctrl-z ভালভাবে কাজ করে।
মেকেরেমকেশিন

ধন্যবাদ,
ইন্টেলিজ

17

আজ আমি এক্সকোড 5 এর জন্য একটি খুব ছোট প্লাগইন লিখেছি যা লাইন এবং নির্বাচনগুলি মুছুন এবং নকল করুন।

আপনি এটি আমার গিটহাব রেপো থেকে ডাউনলোড করতে পারেন: এক্সকোডকিট প্লাগইন - https://github.com/ptfly/XcodeKit


আমি কেবল এটি ডাউনলোড এবং ইনস্টল করেছি - আপনি কমান্ডগুলির জন্য কীবোর্ড শর্টকাট সেট করতে সিস্টেম পছন্দগুলি ব্যবহার করতে পারেন। খুব সুন্দর!
অরিওন এডওয়ার্ডস 21

সর্বোত্তম সমাধান হ'ল কারণ এটি আপনার বর্তমান ক্লিপবোর্ডটি ভাঙ্গবে না। কী-বাইন্ডিংগুলি যুক্ত করতে: সিস্টেমের পছন্দসমূহ -> কীবোর্ড -> শর্টকাট -> অ্যাপ্লিকেশন শর্টকাট -> '+'। উদাহরণস্বরূপ 'সিলেকশন / লাইন মুছুন'
এক্সকোড

আমি এই ইনস্টল করেছি। অসাধারণ, কিছু কারণে যদিও, সম্পাদনার অধীনে আমার "সদৃশ" মেনুটি ধুসর। যদিও আমি সম্পাদকের একটি লাইন নির্বাচন করেছি, কার্সার এবং পুরো লাইনটি নির্বাচন করার চেষ্টা করেছি।
জন বলিঞ্জার

এটি ভয়ঙ্কর চেয়েও বেশি। ধন্যবাদ!
0x6A75616E

এটা আমার জন্য কাজ করে না। "ডুপ্লিকেট" গ্রেভাইড হয়ে গেছে এবং কীবোর্ড শর্টকাটটিও কাজ করবে না।
স্কয়ারবক্স

13

@ হাইলির উত্তরটি বেশ ভাল ছিল, তবে ক্লিপবোর্ডের বিষয়বস্তুগুলি ক্লোবারবারিংয়ের দুর্ভাগ্যজনক প্রতিক্রিয়া ছিল (এটি নকল লাইনের বিষয়বস্তুতে রেখে দেওয়া হয়েছে), যা ম্যানুয়াল অনুলিপি / পেস্ট পদ্ধতির অবিকল অংশ যা আমি এড়াতে চাইছিলাম ।

সুতরাং, আমি কমান্ডের অনুক্রমটিকে এতে পরিবর্তন করেছি:

moveToBeginningOfLine:,
deleteToEndOfLine:,
yank:,
insertNewline:,
moveToBeginningOfLine:,
yank:

yank:আপনি যদি NSTextKillRingSizeকিছু থেকে আলাদা করে রেখেছিলেন তবে 2 টি সম্ভবত উদ্দেশ্য মতো কাজ করবে না 1তবে আমি অবশ্যই নিশ্চিত 1যে এটি পূর্বনির্ধারিত এবং এটি পরিবর্তনের জন্য আপনাকে কিছু অ-তুচ্ছ কাজ করতে হবে (এটিতে একটি এন্ট্রি যুক্ত করা দরকার ~/Library/Preferences/.GlobalPreferences.plist)।


আমি defaults write -g NSTextKillRingSize 1গ্লোবাল প্রিফারেন্স.প্লেস্টের সাথে না খেলার পরিবর্তে কমান্ডটি ব্যবহার করার পরামর্শ দিচ্ছি । ;)
dbernard

@ ইমাস সম্ভবত আপনার ফাইলটি পরিবর্তন করার আগে অন্য কোথাও অনুলিপি করা প্রয়োজন এবং মূল ফাইলটি ওভাররাইট করা উচিত, যদি না আপনি প্যারেন্ট ফোল্ডারে (গুলি) অনুমতি অনুমোদনের ঝুঁকি নিতে চান।
নিপোনস

এটি প্রায় কাজ করে, তবে কোনও কারণে ডুপ্লিকেটড লাইনের শেষে একগুচ্ছ সাদা স্থান যুক্ত হয়ে যায় .. কেন কোনও ধারণা কেন?
tmsimont

5
যদি এই পরিবর্তনটি দিয়ে এটি ঠিক করা হয়:moveToBeginningOfLine:, deleteToEndOfLine:, yank:, insertNewline:, setMark:, moveToBeginningOfLine:, selectToMark:, yank:
tmsimont

এটি প্রস্তাবিত উত্তর হওয়া উচিত (@ হাইলির গাইড অনুসরণ করে)। ধন্যবাদ!
ব্রিকেয়াল

9

আমি ভাবছি কেন কেউ কার্সারটি সরানোর জন্য এবং সম্পূর্ণ লাইনগুলি (যুক্ত করে) দুটি সরানোর জন্য তীর কী ( ) ব্যবহার করে উল্লিখিত হয়নি? ) ।

আমি নিয়মিত ব্যবহার করে একটি লাইনের শুরুতে কার্সার সরিয়ে সমগ্র লাইন (ডুপ্লিকেট) অনুলিপি + + (পরিবর্তে ctrl+ + A) এবং তারপর ব্যবহার + + + + (পরিবর্তে ctrl+ + + +E শেষ পুরো লাইন নির্বাচন করুন ও তারপর কপি করতে) / পেস্ট করুন।

আমি অন্যান্য থ্রেডে চলেছি যেখানে কোনও কিবোর্ড এই কীবোর্ড শর্টকাটগুলি ব্যবহার করছে বলে মনে হচ্ছে না। ওএস এক্সে সেগুলি বিশ্বব্যাপী এবং আমি এগুলি সর্বদা ব্যবহার করি! হ্যান্ড-অ্যাক্রোব্যাটিক্সগুলি খুব কম;)


এটির জন্য কেবলমাত্র 1 টি ক্রিয়া / কী সংমিশ্রণের সাথে ডুপ্লিকেট করার চেয়ে অনেক বেশি "হ্যান্ড-অ্যাক্রোব্যাটিক্স" প্রয়োজন ... হ্যাঁ, আমি আইডিই থেকে আরও কিছু প্রত্যাশা করি text
আইএক্সএক্স

1
এবং এছাড়াও, সদৃশ লাইন শর্টকাট দিয়ে আপনি ক্লিপবোর্ডের সামগ্রীটি ওভাররাইট করতে পারবেন না। অনেক সময় আমি আপনি কোনও কিছু অনুলিপি করি, নকল কোডটি কোড করে তা আটকে দিতে চাই - আপনার পদ্ধতিতে আপনাকে আবার এটি অনুলিপি করতে হবে।
আইএক্সএক্স

হ্যাঁ ঠিক. তবে ওপির পরামর্শের চেয়ে কম। আমি একমত হতে পারি যে একটি একক আদেশই সর্বোত্তম হবে। আমি কেবল ভেবেছিলাম আমি একটি বিকল্প চিহ্নিত করব।
বালদুর

1
এটি বক্স-অফ-অফ-বক্সের চেয়ে আরও ভাল। আমি চাই যে সিএমডি + সি / এক্স কোনও নির্বাচন না করে কেবল অন্যান্য সম্পাদকদের মতো পুরো লাইনটি অনুলিপি / কাটাতে পারে ...
মনরো

@ বালদুর এটি আমিও করি। সেমিডি + বাম সেমিডি + শিফট + ডান সেন্টিমিডি + সি সেমিডি + ডান প্রবেশ করুন সেন্টিমিডি + বাম সেমিডি + পি। 7 টি কী-স্ট্রোকে এটি সহজেই 3 সেকেন্ডেরও কম সময়ে সম্পন্ন করা যায়, তবে এটি অনেক পাঠ্য সম্পাদকের মতো সিআরটিএল + ডি এর তুলনায় এখনও বেশ ক্লান্তিকর। এটি দুর্ভাগ্যজনক যে এটি এক্সকোডে তৈরি করা হয়নি, বা সাধারণ ম্যাকস এবং অ্যাপল সফ্টওয়্যারগুলিতে ভাল গরম কীগুলি নেই।
csga5000

9

সম্পাদনা: জুলাই 12, 2020 এক্সকোড 11.5 আপডেট করার পরে আবার আমার duplicate lineকী এন্ট্রি থেকেplist ফাইল চলে গেল। আমাকে আবার এটি যুক্ত করতে হয়েছিল। মূল বন্ধনটি এখনও সেখানে ছিল।

সম্পাদনা: সেপ্টেম্বর 17, 2019 এক্সকোড 10.3 আপডেট করার পরে আবার আমার duplicate lineকী এন্ট্রিplist ফাইল চলে গেল। আমাকে আবার এটি যুক্ত করতে হয়েছিল। মূল বন্ধনটি এখনও সেখানে ছিল।

সম্পাদনা: মে 28, 2019 এক্সকোড 10.2 আপডেট করার পরে আবার ফাইল duplicate lineথেকে আমার মূল প্রবেশটি plistচলে গেল। আমাকে আবার এটি যুক্ত করতে হয়েছিল। মূল বন্ধনটি এখনও সেখানে ছিল।

সম্পাদনা: 23 ডিসেম্বর, 2018 এক্সকোড 10.1 আপডেট করার পরে আমার সমস্ত শর্টকাট আবার ভেঙে গেছে। তবে ভিন্ন কিছু ছিল লাইন সদৃশতার জন্য প্লাস্ট ফাইলটি আপডেট করার পরে, আমাকে আমার কী বাইন্ডিংগুলি সংজ্ঞায়িত করতে হবে না, তারা ইতিমধ্যে সেখানে ছিল। স্ট্রেঞ্জ।

সম্পাদনা: অক্টোবর 14, 2018 এক্সকোড 10: অ্যাপল-এ উচ্চমানের কেউ সত্যই অনুলিপি / পেস্ট পছন্দ করে এবং এটি নিশ্চিত করে যে এক্সকোড আপডেটের প্রতিটি সংস্করণে লাইনটি সদৃশ হয়ে যায় প্রত্যেকের ইনস্টল থেকে। আমরা বিকাশকারীরা চিরকাল থেকে এক্সকোডে এই বকাবকি চালিয়ে চরম হতাশ হয়ে পড়েছি, কোনও লাইন নকল বিকল্প নয় এমন একমাত্র আইডিই। আমি সবেমাত্র এক্সকোড 10 এ আপডেট করেছি এবং আপনি যেমন অনুমান করেছিলেন - আমার সমস্ত শর্টকাট কীগুলি আমার লাইন সদৃশ কার্যকারিতা সহ সরানো হবে। তবে এটি মূল উত্তরের মতো স্থিরযোগ্য। এবার সামান্য পার্থক্য হল আপনার নিম্নলিখিত লাইনের প্রয়োজন হবে:

<key>Duplicate Current Line</key>
<string>selectLine:, copy:, moveToBeginningOfLine:, paste:, moveToEndOfLine:</string>

সম্পাদনা: এক্সকোড 9: আমাকে আমার শর্টকাটগুলি এবং লাইন সদৃশকরণ এবং মুছে ফেলার কাজটি আবার করতে হয়েছিল, তবে ভাল বিষয় হ'ল আপনি এখন আবার IDETextKeyBindingSet.plist সম্পাদনা করতে পারবেন। অ্যাপল লোকটি এই সংস্করণটি প্রকাশ করার সময় অবশ্যই অবকাশে থাকতে হবে।

সম্পাদনা: এক্সকোড 8: বাগি, আপনি IDETextKeyBindingSet.plist ফাইলটি একেবারে পরিবর্তন করতে পারবেন না। এক্সকোড এটি শুরুতে পুনরায় সেট করে। অ্যাপলের এই উচ্চ আপ লোকটি অন্য সমস্ত আইডিই-র মতো সহজ লাইন নকলের পরিবর্তে অনুলিপি / পেস্ট ব্যবহার করতে আমাদের দৃ determined় সংকল্পবদ্ধ।

সম্পাদনা: এক্সকোড 7.1 এবং এখনও লাইন সদৃশকরণ এবং মোছার জন্য কোনও শর্টকাট নেই। এইমাত্র কোনও আইডিই আমি এর সাথে শর্টকাট না দিয়ে কাজ করেছি। এবং এই দুটি সমালোচনামূলক শর্টকাট ছাড়া আমি কোনও বিকাশকারীর জীবন কল্পনা করতে পারি না।

এটি কীভাবে করা যায় তা এখানে:

প্রথমে আমাদের একটি প্লিস্ট ফাইলটি পরিবর্তন করতে হবে যা এক্সকোড.এপ বান্ডেলের অভ্যন্তরে বাস করে (সম্পাদনা করতে সুডোর প্রয়োজন)

/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist

তারপরে ট্যাগটির সন্ধান করুন <key>Insertions and Indentations</key>এবং এর নিচে <dict>নিম্নলিখিতটি যুক্ত করুন:

<key>Insert New Line Below</key>
<string>moveToEndOfLine:, insertNewline:</string>
<key>Insert New Line Above</key>
<string>moveUp:, moveToEndOfLine:, insertNewline:</string>
<key>Duplicate Current Line</key>
<string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string>

তারপরে ট্যাগের <key>Deletions</key>অধীনে বিভাগটির ভিতরে এবং এগুলি সন্ধান করুন <dict>:

<key>Delete Current Line</key>
<string>selectLine:, delete:</string>
<string>selectLine:, delete:</string>

এখানে চিত্র বর্ণনা লিখুন

এখন এক্সকোডটি খুলুন / পুনঃসূচনা করুন, পছন্দসমূহে যান এবং "কী বাইন্ডিংস" ট্যাবে যান। ফিল্টার করতে এবং নতুন শর্টকাটগুলি সন্ধান করতে অনুসন্ধান বারটি ব্যবহার করুন। তারপরে শর্টকাট বর্ণনার সামনে ক্লিক করুন এটি আপনার পছন্দ হিসাবে শর্টকাট বরাদ্দ। আপনার শর্টকাট বিদ্যমান শর্টকাটগুলির সাথে বিরোধ নয় doesn't

এখানে চিত্র বর্ণনা লিখুন


8

কেন একটি এক লাইনের সদৃশ? সদৃশ পুরো অনুচ্ছেদটি আরও ভাল। আমার ক্রম:

সদৃশ বর্তমান অনুচ্ছেদ

selectParagraph:,
delete:,
yank:,
moveToBeginningOfParagraph:,
yank:,
moveUp:,
moveToEndOfParagraph:

বর্তমান অনুচ্ছেদ মুছুন

selectParagraph:,
delete:,
moveUp:,
moveToEndOfParagraph:

এক্সকোড ৪.6 এ সূক্ষ্মভাবে কাজ করে


সম্মত হন, অনুচ্ছেদে হেরফের করা লাইনের চেয়ে উচ্চতর। প্রত্যেকে, আপনার সম্পাদককে পাঠ্য মোড়ানোর পক্ষে যথেষ্ট সংকীর্ণ করুন এবং লাইন কমান্ডগুলি ব্যবহার করার চেষ্টা করুন।
লোগান মোসলেি 12'13

আপনার কোডটি মোড়ানো আপনার উইন্ডোটি কতটা ছোট। আপনার কোডটি ছোট লাইনে বিভক্ত করার বিষয়টি বিবেচনা করুন যদি এটি প্রায়শই ঘটে থাকে।
নিরব

3

আমি কমান্ডের অনুক্রমটিকে সংশোধন করে বিবেচনা করব:

selectLine:,
copy:,
moveToEndOfLine:,
insertNewline:,
deleteToBeginningOfLine:,
paste:,
moveToBeginningOfLine:, 
deleteBackward:

যোগ deleteToBeginningOfLineসদৃশ লাইনের ইন্ডেন্টিং বজায় রাখে।


কমা পরে আমি একটি স্থানের সাথে (সুদর্শন) নতুন লাইনগুলি বিনিময় করতে পেরে বুঝতে পেরে এটি দুর্দান্ত কাজ করেছিল।
ম্যাকউসর

2

অন্তত নতুন লাইনে অনুলিপি তৈরি করার জন্য ইনসার্টলাইনব্র্যাকের প্রয়োজন ছিল, এটি ছাড়া আমি একই লাইনে অনুলিপি পেয়েছি


2

ম্যাকস সিয়েরা এবং এক্সকোড 9 এ .plist ফাইলটি আনলক করতে আমার বড় সমস্যা হয়েছিল, এমনকি @ টিম সিদ্ধান্তটি আমার পক্ষে কার্যকর হয়নি। আপনার যদি একই সমস্যা হয় তবে টার্মিনালে যান এবং এটি করুন:

cd /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources/
sudo chmod -R 777 *
nano IDETextKeyBindingSet.plist

এটি করার সম্ভাব্য কয়েকটি উপায়ও এখানে বর্ণিত হয়েছে

তারপরে ন্যানো সম্পাদকটিতে ক্লিক করে ^W'সন্নিবেশ' টাইপ করুন 'সন্নিবেশ এবং সূচিপত্র' অংশে jump কেবল <dict>ট্যাগের অধীনে এই এক্সএমএল-স্নিপেটটি পেস্ট করুন:

<key>Duplicate line</key>
<string>selectLine:, copy:, moveToEndOfLine:, insertNewLine:, paste:, deleteBackward:</string>

প্রেস control + X, তারপর Y, তারপর Enterফাইল ন্যানো সম্পাদকে সংরক্ষণ করুন।

ইউপিডি: আমি একটি আরও ভাল সিদ্ধান্ত নিয়ে এসেছি, যা সদৃশ হওয়ার আগে একটি অতিরিক্ত লাইন যুক্ত করে (আপনি যখন কোনও লাইনের ডুপ্লিকেট করতে চান যখন এর ঠিক নীচে একটি অন্য লাইন রয়েছে):

<key>Duplicate line</key>
<string>selectLine:, copy:, moveToEndOfLine:, insertLineBreak:, moveUp:, paste:, moveToBeginningOfLine:</string>

1

এখানে আমার মুছুন ( CTRL+ D) এবং সদৃশ ( CMD+ SHIFT+)D আমার আইডিইটিএসটেক্সিবেইন্ডিংসেট.পল্লিস্ট থেকে আমার ) এন্ট্রি রয়েছে। (অ্যাপ্লিকেশনগুলিতে / এক্সকোড.এপ / বিষয়বস্তু / ফ্রেমওয়ার্কস / আইডিইকিট.ফ্রেমওয়ার্ক / সংস্করণ / এ / রিসোর্সগুলিতে)

আমি এগুলি কেবল এক্সকোড ৪.6.১ এ সেট করেছি (উপরে এবং অন্য কোথাও ব্যবহারকারীর কাছ থেকে উত্তরের উপর ভিত্তি করে)

    <key>Custimozed</key>
<dict>
    <key>Delete Current Line</key>
    <string>deleteToBeginningOfLine:, moveToEndOfLine:, deleteToBeginningOfLine:, deleteBackward:, moveDown:, moveToBeginningOfLine:</string>
    <key>Duplicate Current Line</key>
    <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, deleteToBeginningOfLine:, paste:, moveToBeginningOfLine:, deleteBackward:</string>
</dict>

0

এক্সকোডে সাব্লাইমের ডুপ্লিকেটলাইনআপ এবং ডুপ্লিকেটলাইনডাউনের সাথে মিল রাখতে চাইলে যে কোনও উচ্চমানের পাঠ্য ব্যবহারকারী , দয়া করে নীচে আপনার আইডিটেক্সটকি বাইন্ডিংসেট.পিস্টলিস্ট ফাইলটিতে যুক্ত করুন

<key>Line Duplications</key>
<dict>
    <key>Duplicate Current Line Above</key>
    <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:, moveUp:</string>
    <key>Duplicate Current Line Below</key>
    <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string>
</dict>

0

IDETextKeyBindingSet.plist সম্পাদনা করার জন্য অন্য কারও অ্যাক্সেস অস্বীকার করা হলে আপনি নিজের লেখার / পড়ার অনুমতি নিজের দ্বারা দিতে পারেন:

sudo chmod 777 /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources/IDETextKeyBindingSet.plist

0

কেবল হাইলির উত্তরটির পরিপূরক হিসাবে, যে আদেশগুলি আমার পক্ষে সবচেয়ে ভাল কাজ করেছিল তা হ'ল:

selectLine:, copy:, moveRight:, moveLeft:, insertNewline:, paste:, deleteBackward:

তাঁর প্রস্তাবিত কমান্ডগুলি আমার জন্য নীচের দুটি লাইনের কাঙ্ক্ষিত লাইনটি অনুলিপি করছিল।


0
<key>Duplicate Lines</key>    
<string>selectLine:, copy:, moveToBeginningOfLine:, paste:</string>

সদৃশ লাইন সমর্থিত। (এটি এক্সকোড 9.2 তে কাজ করে)


0

এক্সকোড 11 হিসাবে উপরের কোনওটিই আমার পক্ষে কাজ করেনি। পরের লাইনের পরে লাইনটি সন্নিবেশ করায় প্রথম উত্তরের একটি অদ্ভুত আচরণ ছিল had নিম্নলিখিত উত্তরটি অবশ্য আমার পক্ষে কাজ করেছিল।

<key>Duplication</key>
<dict>
    <key>Duplicate Current Line</key>
    <string>moveToBeginningOfLine:, deleteToEndOfLine:, yank:, insertNewline:, moveToBeginningOfLine:, yank:</string>
    <key>Duplicate Lines</key>
    <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string>
    <key>Delete Line</key>
    <string>selectLine:, deleteBackward:</string>
</dict>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.