2009-10-27 21 views
11

मैं इंटेलिजे की कोशिश कर रहा हूं और एक मामूली परेशानी है कि अगर इंटेलिजे में कोई संभावित समाधान हो तो मुझे पता नहीं लगाया जा सकता है। ग्रहण और यहां तक ​​कि टेक्स्टमैट (साथ ही साथ स्वत: पूर्ण के साथ कई अन्य संपादकों) में, यदि आप स्ट्रिंग या कंस्ट्रैसिस क्षेत्र जैसे स्वत: पूर्ण अनुभाग के बीच में हैं, तो आप उस अनुभाग के अंत तक पहुंचने के लिए एंटर या टैब दबा सकते हैं। उदाहरण के लिए:IntelliJ स्वत: पूर्ण भागने

if (blah.equals(something.toString())) 

देखभाल करना स्ट्रिंग भाग के कोष्ठक के बीच में होगा। IntelliJ में, आप बिना किसी समस्या के उन कोष्ठक के माध्यम से टाइप कर सकते हैं, या आप इसके अंत तक पहुंचने के लिए "एंड" कुंजी दबा सकते हैं। एक मामूली परेशानी है, दूसरा और अधिक परेशान है क्योंकि मुझे घर की पंक्ति से अपना हाथ लेना है। ग्रहण में मैं एंटर कुंजी दबा सकता हूं और यह मुझे इससे बाहर निकाल देगा ... टेक्स्टमैट, टैब।

क्या कोई सेटिंग है जो मैं ट्विक कर सकता हूं या इंटेलिजे में समान कार्यक्षमता देने के लिए कुछ कर सकता हूं?

उत्तर

6

उस संदर्भ में यदि आप Ctrl-Shift-Enter दबाते हैं, तो क्रेज़ीकोडर सुझाव देता है कि आप इस व्यवहार को प्राप्त करते हैं। यह ब्रेसिज़ जोड़ देगा और आपके कर्सर को अगली पंक्ति पर रखेगा। आप Shift-Enter भी दबा सकते हैं जो आपको अगली पंक्ति में डाल देगा और कोड के बारे में कम धारणाएं देगा। Ctrl-Shift-Enter उस कोड के आधार पर अलग-अलग व्यवहार करता है, जिससे यह लगातार व्यवहार नहीं करेगा। उदाहरण के लिए एक स्ट्रिंग के बीच में यह आपको लाइन के अंत में रखता है और अर्द्ध-कोलन जोड़ता है।

ऐसा लगता है कि लाइन के अंत तक पहुंचने के लिए अंत को प्राथमिकता दी जाती है। यदि आप एक अलग कुंजी संयोजन आपके लिए बेहतर काम करते हैं, तो आप कुंजी मानचित्र में लाइन के अंत में जाने के लिए एक अतिरिक्त कुंजी जोड़ सकते हैं, लेकिन यह केवल अपने व्यवहार को नहीं बदलेगा क्योंकि आप कोष्ठक के बीच में हैं।

आईडीईए विकल्पों को देखते हुए, ऐसा लगता है कि ब्रांड्स व्यवहार वास्तव में एक लूप के लिए स्वचालित रूप से एक लाइव टेम्पलेट नहीं है, इसलिए जब आप पूरा कर लेंगे तो आप टैब आउट नहीं करते हैं, बल्कि यह केवल स्वचालित रूप से ब्रांड्स को पूरा करता है आपके लिए, और बुद्धिमानी से यह स्वीकार करते हुए कि आप तरल पदार्थ टाइप करना चाहेंगे जैसे कि यह नहीं था।

5

मैंने cmd-shift-enter (मैक पर) दर्ज किया और परिणाम मेरे लिए (जावास्क्रिप्ट कोड में) अधिक उपयोगी लगता है।

से पहले:

var x = func1(func2(|)) 

दबाने के बाद cmd-शिफ्ट दर्ज करें:

var x = func1(func2());| 

तो यह भी कहते हैं कर्सर यहाँ कल्पना करने के लिए | मैं एक पाइप ('') का उपयोग कर रहा लाइन के अंत में अर्धविराम (लेकिन आपको अभी भी अगली पंक्ति पर जाने के लिए फिर से एंटर दबाएं)।

संपादित

सिर्फ इस शॉर्टकट पाया और भी अधिक उपयोगी है:

से पहले:

if(a == b|) 

दबाने के बाद cmd-शिफ्ट: दर्ज:

if(a == b) { 
    | 
} 

दोनों PHP और जावास्क्रिप्ट

0

दोनों में काम करता है वर्तमान में Intellij द्वारा समर्थित नहीं है। इस पर http://youtrack.jetbrains.com/issue/IDEA-74666 पर एक खुला सुविधा अनुरोध है। अतिरिक्त वोट अच्छा होगा।

1

के बाद से इन उत्तरों तरह का पुराने हैं, मैं अगर कोई ध्यान रखें कि आप से बाहर निकल सकते है पता नहीं है संलग्न स्वत: पूर्ण शिफ्ट + कुंजी

टाइप करके दायर आप अगर जावा में System.out.println किया था ("हैलो वर्ल्ड!"); तो अपने कर्सर "के भीतर है", शिफ्ट + " आप" "और शिफ्ट + ) के बाहर()

के बाहर आपको मिल जाएगा मिल जाएगा
संबंधित मुद्दे