ভিএম-তে স্ব্যাপ ফাইল তৈরি করা অক্ষম করা হচ্ছে


216

.swpভিএম-তে ফাইল তৈরি নিষ্ক্রিয় করার কোনও উপায় আছে কি ? বা কমপক্ষে সেগুলি এক জায়গায় তৈরি করুন যাতে আমি এগুলি সহজেই খুঁজে পেতে এবং মুছতে পারি।

আমি একই সময়ে সম্পাদনা করার সময় আমি পিতামাতার ডিরেক্টরিটি অনুলিপি করি তখন আমি তাদের বিশেষত বিরক্তিকর বলে মনে করি। অবশ্যই আমি জানি যে আমি তাদের খুঁজে পেতে এবং মুছতে অনুসন্ধান-এক্সেক ব্যবহার করতে পারি। তবে আমি আরও একটি বাস্তব সমাধান চাই।


1
stackoverflow.com/questions/607435/… সাহায্য করতে পারে
রস

উত্তর:


255

ভিএম এর মধ্যে থেকে অদলবদল অক্ষম করতে টাইপ করুন

:set noswapfile

অদলবদল স্থায়ীভাবে অক্ষম করতে, আপনার ~/.vimrcফাইলটিতে নীচে যুক্ত করুন

set noswapfile

আরও তথ্যের জন্য স্ব্যাপফাইলে ভিম ডক্স দেখুন


6
যদি আপনার সম্পাদক (পাওয়ার আউটেজ ইত্যাদি) ক্রাশ হয়ে যায় তবে স্যুপ ফাইলগুলি ভাল just
কুনসে

1
অন্য বিকল্পটি এখনও স্ব্যাপ ফাইল ব্যবহার করছে, তবে এটিকে মেমোরিতে রেখে দিন, সুতরাং এটি হার্ড ডিস্কটি লেখা রাখবে না। এটি আউটেজের সময় ফাইলটি হারাতে আপনাকে রক্ষা করতে পারে না তবে আপনি যদি একই ফাইলটি অ্যান্থার ভিমে খোলেন তবে তা অবিলম্বে আপনাকে জানাবে। কমান্ডটি হ'ল: ডিরেক্টরিটি সেট করুন = / dev / shm
ওয়েববার্টিজার

trusktr এর উত্তর আপনাকে ওপি'র উদ্বেগের সমাধান করার সময় অদলবদলের সুবিধা রাখার অনুমতি দেয়।
jpaugh

ভিমের অভ্যন্তর থেকে আপনি কোনও ফাইল খোলার সময় :noswapfile edit /path/to/file
সোয়াপ

ডেটা ক্ষতি সম্পর্কে আমার ব্যক্তিগত দর্শনটি ডিবিএবি এবং প্রায়শই সংরক্ষণ করা হয় ...
স্যামি বেঞ্চিরিফ

156

.Vimrc বা / etc / vimrc এ নিম্নলিখিত ভেরিয়েবলগুলি সেট করুন যাতে ভিএম পুট অদলবদল, ব্যাকআপ এবং ফাইলগুলি সম্পাদনা করার পরিবর্তে ওয়ার্কিং ডিরেক্টরি পরিবর্তে একটি বিশেষ স্থানে ফাইলগুলি পূর্বাবস্থায় ফেলা যায়:

set backupdir=~/.vim/backup//
set directory=~/.vim/swap//
set undodir=~/.vim/undo//

পথে ডাবল ট্রেলিং স্ল্যাশ ব্যবহার করে ভিএমকে এমন কোনও বৈশিষ্ট্য সক্ষম করতে বলা হয় যেখানে এটি নাম সংঘর্ষগুলি এড়ায়। উদাহরণস্বরূপ, আপনি যদি কোনও স্থানে একটি ফাইল এবং অন্য স্থানে অন্য একটি ফাইল সম্পাদনা করেন এবং উভয় ফাইলের একই নাম থাকে তবে আপনি চান না যে coll / .vim / swap / তে কোনও নামের সংঘর্ষ ঘটুক। যদি আপনি tra / .vim / swap // নির্দিষ্ট করে দুটি ট্রেলিং স্ল্যাশ ভিএম দিয়ে সংঘর্ষ এড়ানোর জন্য সম্পাদনা করা ফাইলগুলির পুরো পথ ব্যবহার করে অদলবদল তৈরি করবেন (ফাইলের পথে স্ল্যাশগুলি শতাংশ প্রতীক% দ্বারা প্রতিস্থাপন করা হবে)।

উদাহরণস্বরূপ, আপনি যদি /path/one/foobar.txt এবং /path/two/foobar.txt সম্পাদনা করেন, তবে আপনি ~ / .vim / swap / এ দুটি স্ব্যাপ ফাইল দেখতে পাবেন যা% पथ% এক% foobar.txt নামযুক্ত এবং যথাক্রমে% 2%% foobar.txt


আপনি আরও যোগ করতে পারেন যে কিছু সময় সংরক্ষিত ব্যাকআপ ফাইলগুলি কোনও
ডিভাস

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

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

26
নতুন যারা (আমার মত হা হা ...) তাদের জন্য কেবল FYI আপনাকে ~ / .vim / এ যেতে হবে এবং ডিরেক্টরিগুলি নিজেই তৈরি করতে হবে। এটি আপনার জন্য এগুলি স্বয়ংক্রিয়ভাবে তৈরি করবে না।
আগস্ট

1
আপনি নিজের জন্য ফোল্ডারগুলি স্বয়ংক্রিয়ভাবে তৈরি করতে আপনি আপনার ভিএমআরসি-তে কিছু কোডও লিখতে পারেন, যা আমি আমার কাজটি করেছি। সুতরাং, নতুন সিস্টেমে, আমি কেবল আমার vimrc পাই, এবং এটি বাকীগুলির যত্ন নেয়।
trusktr

42

আমি উত্তর এখানে পেয়েছি :

vim -n <file>

swapfile ছাড়াই ফাইল খোলে।

এছাড়াও:

set dir=/tmp

মধ্যে .vimrcswapfiles তৈরি করে /tmp


*.ext~ব্যাকআপ ফাইলগুলির কী হবে ? এগুলি অক্ষম করার জন্য কি কোনও কমান্ড লাইন বিকল্প নেই?
সালমান ভন আব্বাস

এটি এক-অফ বিশাল ফাইলগুলির জন্য খুব দরকারী! ধন্যবাদ।
ফিলিপ আলভারেজ

28

এখানে আমার ব্যক্তিগত। / .vimrc ব্যাকআপ সেটিংস

" backup to ~/.tmp 
set backup 
set backupdir=~/.vim-tmp,~/.tmp,~/tmp,/var/tmp,/tmp 
set backupskip=/tmp/*,/private/tmp/* 
set directory=~/.vim-tmp,~/.tmp,~/tmp,/var/tmp,/tmp 
set writebackup

13

আমি তাদের সাথে একমত যারা যারা অন্য কোন পাঠ্য সম্পাদকরা এটিকে বিরক্ত করেন না তখন ভিএমকে কেন এই সমস্ত 'বিপর্যয় পুনরুদ্ধার' স্টাফের প্রয়োজন হয়। আমি সম্পাদনা করার সময় সম্পাদিত ফাইলের ডিরেক্টরিতে কোনও অতিরিক্ত ফাইল তৈরি করা vim চাই না, আপনাকে অনেক ধন্যবাদ। সে লক্ষ্যে, আমি _vimrcস্বাপ ফাইলগুলি অক্ষম করতে এবং টেম্পের ডিয়ারে জ্বালাময়ী 'ব্যাকআপ' ফাইলগুলি সরানোর জন্য এটি আমার কাছে রয়েছে:

" Uncomment below to prevent 'tilde backup files' (eg. myfile.txt~) from being created
"set nobackup

" Uncomment below to cause 'tilde backup files' to be created in a different dir so as not to clutter up the current file's directory (probably a better idea than disabling them altogether)
set backupdir=C:\Windows\Temp

" Uncomment below to disable 'swap files' (eg. .myfile.txt.swp) from being created
set noswapfile

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

3
ভিমের সোয়াফিল ফাইলটি হ'ল ভয়ঙ্কর। আমি এটি হারিয়ে যাওয়া ডেটা পুনরুদ্ধার করতে সম্ভবত 5 বার ব্যবহার করেছি। তবে আমার প্রায় 9,000 বারের মতো সোয়াফিল ফাইলটি পুনরুদ্ধার করতে ঝামেলা পোহাতে হয়েছে, যা যাইহোক ফাইলের মতো অদৃশ্য, বা পুরানো সংস্করণের চেয়ে খারাপ। পুনরুদ্ধার প্রক্রিয়াটি এত ভয়াবহভাবে চুষতে না পারলে এটি একটি দুর্দান্ত বৈশিষ্ট্য হতে পারে। পুনরুদ্ধার.ভিম কিছুটা সহায়তা করে তবে এটি এখনও খুব ইন্টারেক্টিভ।
জোয়েটউইডল

3
মহামান্য পাঠ্য আছে disaster recovery। আমি এটা ভালোবাসি! এমনকি আমি কোনও ফাইল সংরক্ষণ করতে হবে না, যখন আমি যে পরিবর্তনগুলি করেছি, সংরক্ষণ করেছি বা না করেছি তা পুনরায় শুরু করার পরে আবার টেনে আনতে হবে।
leetNightshade

আমার একটি সাধারণ অটোকম্যান্ড রয়েছে যা সমস্ত পরিবর্তনগুলি তৈরি হওয়ার সাথে সাথেই তা লিখে দেয়, স্ব্যাপফাইল এবং ব্যাকআপ উভয়কেই অকেজো করে তোলে।
tbodt

2
@ টোরকেলবিজার্নসন-ল্যাঞ্জেন সম্ভবত আমার সমস্ত ভিম সেশন বন্ধ না করেই আমার মেশিনটি রিবুট করার জন্য এবং তারপরে ফাইলগুলি পুনরুদ্ধার করার জন্য ভৌত হওয়ার বিষয়টি সম্ভবত বৈধ। যাইহোক আমি উভয় পৃথিবীর সেরাটি
joeytwizz

7

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

set backupdir=~/.vim/backup/
set directory=~/.vim/backup/

3
//পাথগুলির শেষে আপনার একটি ডাবল স্ল্যাশ যুক্ত করা উচিত যাতে আপনি একই নামের সাথে একই সাথে দুটি ফাইল সংশোধন করতে পারেন।
স্যামুয়েল ও'ম্যালি

ধন্যবাদ, @ স্যামুয়েলও'ম্যালি // কি করে?
মনোক্রোম

আপনি :help directoryযদি এর জন্য ডকগুলি পড়তে চান তবে একবার দেখুন । ডাবল স্ল্যাশ vim কে অদলবদল ফাইলের নামের মধ্যে এনকোড করতে বলে, উদাহরণস্বরূপ %home%sam%dotfiles%.gitignore.swp, কেবল না .gitignore.swp
স্যামুয়েল ও'ম্যালি 21

3

আপনি যদি set directory=""আপনার এক্সআরসিআর ফাইলটি রেখে দেন তবে আপনি সোয়াপ ফাইলটি বন্ধ করে দেবেন। তবে এটি করার ফলে পুনরুদ্ধার অক্ষম হবে।

আরও তথ্য এখানে


3

আপনি যদি ব্যবহার করে থাকেন gitতবে *.swpআপনি এতে যুক্ত করতে পারেন .gitignore


আমি মনে করি এটিই সর্বাধিক ব্যবহারকারীদের প্রয়োজন! অদলবদল ফাইল বন্ধ করা খারাপ অভ্যাস।
ডেনিসকলোডিন

2

শুধুমাত্র একটি নির্দিষ্ট ফাইলের জন্য কোনও ভিআইএম স্যুপ ফাইল তৈরি করবেন না

autocmd bufenter  c:/aaa/Dropbox/TapNote/Todo.txt :set noswapfile

1
বা একটি নির্দিষ্ট ডিরেক্টরিতে সমস্ত ফাইলের জন্য, নিম্নলিখিতগুলি কাজ করছে বলে মনে হচ্ছে (কেবল সংক্ষিপ্ত পরীক্ষা):autocmd bufenter c:/aaa/Dropbox/TapNote/* :set noswapfile
স্কটকস্টি

1

যার জন্য এটি রেল প্রকল্পগুলির জন্য সেট করার চেষ্টা করছেন, যুক্ত করুন

set directory=tmp,/tmp

আপনার মধ্যে

~/.vimrc

সুতরাং .swp ফাইলগুলি তাদের প্রাকৃতিক অবস্থানে থাকবে - টিএমপি ডিরেক্টরি (প্রতি প্রকল্পে)।

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