পাইচার্মের টার্মিনালের ভিতরে আমি কীভাবে একটি ভার্চুয়ালেনভকে সক্রিয় করব?


110

আমি পাইচার্ম সেট আপ করেছি, আমার ভার্চুয়ালেনভ তৈরি করেছি (হয় ভার্চুয়াল এনভি কমান্ডের মাধ্যমে, অথবা সরাসরি পাইচার্মে) এবং সেই পরিবেশটিকে আমার দোভাষী হিসাবে সক্রিয় করেছি। সবকিছু ঠিকঠাক কাজ করছে।

তবে, যদি আমি "সরঞ্জামগুলি, টার্মিনাল খুলুন" ব্যবহার করে একটি টার্মিনাল খুলি, সরবরাহ করা শেল প্রম্পটটি ভার্চুয়াল এনভিভ ব্যবহার করছে না ; source ~/envs/someenv/bin/activateএটি সক্রিয় করতে এখনও আমাকে টার্মিনালের মধ্যে ব্যবহার করতে হবে।

আর একটি পদ্ধতি হ'ল পরিবেশকে শেল থেকে সক্রিয় করা এবং সেই পরিবেশ থেকে পাইচার্ম চালানো। এটি "কার্যক্ষম" তবে বেশ কুৎসিত এবং এর অর্থ আমি পাইচার্ম থেকে পরিবেশ বা প্রকল্পগুলি স্যুইচ করলে আমার বড় সমস্যা রয়েছে: আমি এখন সম্পূর্ণ-ভুল পরিবেশটি ব্যবহার করছি।

"সরঞ্জাম, ওপেন টার্মিনাল" স্বয়ংক্রিয়ভাবে ভার্চুয়াল পরিবেশ সক্রিয় করার জন্য আরও কিছু সহজ উপায় আছে?

উত্তর:


95

সম্পাদনা:

Https://www.jetbrains.com/pycharm/whatnew/#v2016-3-venv-in-terminal অনুসারে , পাইচার্ম 2016.3 (নভেম্বর 2016 প্রকাশিত হয়েছে) এর বাক্সের বাইরে টার্মিনালের জন্য ভাইরালিট্যানভ সমর্থন রয়েছে

অটো ভার্চুয়ালেনভ বাশ, জেডএস, ফিশ এবং উইন্ডোজ সেন্টিমিডির জন্য সমর্থিত। আপনি নিজের শেল পছন্দটিকে সেটিংস (পছন্দসমূহ) এ কাস্টমাইজ করতে পারেন সরঞ্জাম | টার্মিনাল।


পুরানো পদ্ধতি:

.pycharmrcনিম্নলিখিত সামগ্রীগুলি সহ আপনার হোম ফোল্ডারে একটি ফাইল তৈরি করুন

source ~/.bashrc
source ~/pycharmvenv/bin/activate

শেষ প্যারামিটার হিসাবে আপনার ভার্চুয়ালেনভ পাথ ব্যবহার করে।

তারপরে শেল পছন্দসমূহ-> প্রকল্প সেটিংস-> শেল পথটি সেট করুন

/bin/bash --rcfile ~/.pycharmrc

9
ধন্যবাদ! আমি শেলের আরসি ফাইলকে ওভাররাইড করার কথা ভাবিওনি। একাধিক প্রকল্পের সাথে কাজ করা পাইচার্মকে আরও ভালভাবে সমর্থন করার জন্য, যার প্রতিটিটির আলাদা আলাদা ভার্চুয়ালেনভ থাকতে পারে, আমি ".pycharmrc" ফাইলটিকে অন্য কিছু বলে ডাকতাম এবং সম্ভবত এটি এনভির ডিরেক্টরিতে রেখেছিলাম। ~/pycharmenv/bin/terminalactivateএকটি ভাল বিকল্প মত শোনাচ্ছে।
ক্রিস কগডন

1
পাইচার্ম 4 এর আইডিইতে মিলিয়ে ভার্চুয়াল্যানভ রয়েছে। আরও তথ্যের জন্য আমার উত্তর দেখুন।
18

1
@ পিটারগিবসন, ওফির প্রশ্নের সাথে পেফেরেটের উত্তরের কোনও যোগসূত্র নেই। সমস্যাটি পাইথন ইন্টারপ্রেটারের নয় টার্মিনাল। পাইকার্ম ৪ এর আগে ভেনভ ইন্টিগ্রেশনটি সেখানে ছিল Your আপনার উত্তরটি যদিও কাজ করে।
নরবার্ট

1
এটি .pycharmrcপ্রজেক্টের হোম ফোল্ডারে আমার জায়গাটি বাদ দেওয়া ছাড়া এটি সহজ সমাধান, যাতে প্রতিটি প্রকল্পের জন্য আমার আলাদা ফাইল থাকতে পারে। একটি সঠিকভাবে কনফিগার করা প্রকল্পে, .pycharmrcফাইলটির নিখুঁত পথ সরবরাহ করার দরকার নেই ।
tchakravarty

1
@ সিমিনজি, পাইচার্ম 2016.3.2 এর বাক্স থেকে এই জাতীয় বিকল্প রয়েছে। সেটিংস -> সরঞ্জাম -> টার্মিনালে যান। এবং নিশ্চিত করুন যে "অ্যাক্টিভেট ভার্চুয়ালেনভ" বিকল্পটি সক্ষম হয়েছে is
renskiy

45

হালনাগাদ:

সেটিংসে (পছন্দসমূহ) পছন্দসমূহ সরঞ্জাম | টার্মিনাল গ্লোবাল হয়।
আপনি যদি প্রতিটি প্রকল্পের জন্য একটি ভেনভ ব্যবহার করেন, তবে বর্তমান পাথ ভেরিয়েবল এবং একটি ডিফল্ট ভেনভ নামটি মনে রাখবেন:

"cmd.exe" /k ""%CD%\venv\Scripts\activate"" 

উইন্ডোজ ব্যবহারকারীদের জন্য: ভার্চুয়াল পরিবেশের সাথে পাইচার্ম ব্যবহার করার সময় আপনি এটি ব্যবহার করতে পারেন /K প্যারামিটারটিcmd.exe করার সময়, ভার্চুয়াল পরিবেশটি স্বয়ংক্রিয়ভাবে সেট আপনি ।

PyCharm 3 বা 4: Settings, Terminal,Default shell এবং অ্যাড/K <path-to-your-activate.bat>

PyCharm 5: Settings, Tools, Terminal, এবং অ্যাড/K <path-to-your-activate.bat> করতেShell path

PyCharm 2016,1 বা 2016,2: Settings, Tools, Terminal, এবং যোগ ""/K <path-to-your-activate.bat>""করার জন্য Shell pathযোগ (মন কোট)। এছাড়াও cmd.exe এর চারপাশে উদ্ধৃতি যুক্ত করুন, ফলস্বরূপ:

"cmd.exe" /k ""C:\mypath\my-venv\Scripts\activate.bat""



40

উইন্ডোজ ব্যবহারকারীদের জন্য যখন পাইচার্ম এবং উইন্ডোজের অধীনে ভার্চুয়াল পরিবেশ ব্যবহার করা হচ্ছে, আপনি ভার্চুয়াল পরিবেশটি স্বয়ংক্রিয়ভাবে সেট করার জন্য / k প্যারামিটারটি cmd.exe ব্যবহার করতে পারেন।

সেটিংস, টার্মিনাল, ডিফল্ট শেল এবং অ্যাড এ যান /K <path-to-your-activate.bat>

পূর্ববর্তী প্রতিক্রিয়া সম্পর্কে মন্তব্য করার মতো খ্যাতি আমার নেই, তাই এই সংশোধিত সংস্করণটি পোস্ট করুন। এটি সত্যই প্রচুর সময় সাশ্রয় করে।

হালনাগাদ:

দ্রষ্টব্য: পাইচার্ম এখন সরাসরি ভার্চুয়াল পরিবেশকে সমর্থন করে এবং এটি আমার পক্ষে ভালভাবে কাজ করছে বলে মনে হচ্ছে - সুতরাং আমার কর্মক্ষেত্রের আর দরকার নেই।


এটি দুর্দান্ত, তবে কেবলমাত্র যখন আপনার সমস্ত প্রকল্পের জন্য একটি মাত্র ভার্চুয়ালেনভ থাকে। ডিফল্ট শেল সেটিং প্রকল্পগুলিতে ভাগ করা হয়
মার্টিনএম

7

পিটারের উত্তর এবং পরীক্ষার উপর ভিত্তি করে, আমি একটি ভাল "সাধারণ সমাধান" নিয়ে এসেছি, যা নিম্নলিখিতগুলি সমাধান করে:

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

এই স্ক্রিপ্টটি কোথাও একটি বিন ডিরেক্টরিতে ফেলে দিন। যেমন ~ / বিন / পিচারম্যাকটিভেট

if [ -r "/etc/profile" ] ; then . /etc/profile ; fi
if [ -r "~/.bash_profile" ] ; then
    . ~/.bash_profile
elif [ -r "~/.bash_login" ] ; then
    . ~/.bash_login
elif [ -r "~/.profile" ] ; then
    . ~/.profile
fi
ACTIVATERC=`cat .idea/workspace.xml | perl -n -e 'print "\$1/bin/activate" if m:option name="SDK_HOME" value="\\\$USER_HOME\\\$(.*)/bin/python":'`
if [ -n "$ACTIVATERC" ] ; then . "$HOME/$ACTIVATERC" ; else echo "Could not find virtualenv from PyCharm" ; fi

তারপরে পাইচার্মের শেল পথটি এতে সেট করুন:

/bin/bash --rcfile ~/bin/pycharmactivate

1
ধন্যবাদ! বাশার্ক এবং ব্যাশ প্রোফাইলগুলি কোথায় শুরু করতে হবে তা নির্ধারণের জন্য কয়েক ঘন্টা ব্যর্থ চেষ্টা করার পরে এটি আমার জন্য কাজ করেছিল। তবে এটি নিক্ষেপ করেছে এবং ত্রুটি করেছে যে এটি আমার ভার্চুয়াল এনভিভিটি খুঁজে পাবে না তাই আমি এটির মতো এটির সংশোধন করেছি, আপনি কি ঠিক বলতে পারেন? if [ -r "/etc/profile" ] ; then . /etc/profile ; fi if [ -r "~/.bash_profile" ] ; then . ~/.bash_profile elif [ -r "~/.bash_login" ] ; then . ~/.bash_login elif [ -r "~/.profile" ] ; then . ~/.profile fi source ~/learnp/project1/venv/bin/activate
জিরোহেজ

@ জেরেজেড: আপনার স্ক্রিপ্টটি ঠিকঠাক কাজ করবে, তবে এটি আপনার "প্রজেক্ট 1" ভার্চুয়ালেনভের সাথে স্থির। উপরের স্ক্রিপ্টটি অটো-সনাক্তকরণ করার কথা ছিল, তবে অনুমানের একটি গুচ্ছ রয়েছে: প্রাথমিক কাজ ডিরেক্টরিটি ".idea" ডিরেক্টরিটির অবস্থান; ওয়ার্কস্পেস.এক্সএমএল ফাইলের ফর্ম্যাটটি উল্লেখযোগ্যভাবে পরিবর্তন হয় না। দুর্ভাগ্যক্রমে, দেখে মনে হচ্ছে পাইচার্ম সংস্করণ 5 এর ক্ষেত্রে উল্লেখযোগ্য পরিবর্তন করেছে। আমি এখন তথ্য কোথায় আছে তা বুঝতে পারি না।
ক্রিস কগডন

প্রকল্পের উপর নির্ভর করে আমার সংযোজনটি পরিবর্তন করতে আমি আপত্তি করি না, কারণ শেল পথটিও প্রকল্পটি নির্দিষ্ট। আপনার স্ক্রিপ্টটি সন্ধানের আগে আমি কেবলমাত্র "bash 3.2 $:" বলে একটি প্রম্পট পেয়েছি, আমার বর্তমান ডিরেক্টরিটি বা আমার টার্মিনাল প্রম্পটের অনুরূপ কোনও ইঙ্গিত ছাড়াই। আবার আপনাকে ধন্যবাদ!
জিরোহেডেজ

7

পাইচার্ম 4 এখন আইডিইতে ভ্যুচুয়ালেনভগুলি সংহত করেছে। আপনার প্রকল্প দোভাষীটি নির্বাচন করার সময়, আপনি কোনও ভার্চুয়ালেনভ তৈরি করতে, যুক্ত করতে বা চয়ন করতে পারেন। তারা একটি "পাইথন কনসোল" যুক্ত করেছেন যা কনফিগার করা প্রকল্প দোভাষীতে চালিত হয়।

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


11
এটি কীভাবে উত্তর দেয়? এখনও source /path/to/venv/bin/activateম্যানুয়ালি টার্মিনালে থাকতে হবে।
frnhr

6

ধন্যবাদ ক্রিস, আপনার স্ক্রিপ্টটি কিছু প্রকল্পের জন্য কাজ করেছে তবে সমস্ত আমার মেশিনে নেই। এখানে আমি লিখেছি এমন একটি স্ক্রিপ্ট রয়েছে এবং আমি আশা করি যে কেউ এটির কাজে লাগবে।

#Stored in ~/.pycharmrc 

ACTIVATERC=$(python -c 'import re
import os
from glob import glob

try:
  #sets Current Working Directory to _the_projects .idea folder
  os.chdir(os.getcwd()+"/.idea") 

  #gets every file in the cwd and sets _the_projects iml file
  for file in glob("*"): 
    if re.match("(.*).iml", file):
      project_iml_file = file

  #gets _the_virtual_env for _the_project
  for line in open(project_iml_file):
    env_name = re.findall("~/(.*)\" jdkType", line.strip())
    # created or changed a virtual_env after project creation? this will be true
    if env_name:
      print env_name[0] + "/bin/activate"
      break

    inherited = re.findall("type=\"inheritedJdk\"", line.strip())
    # set a virtual_env during project creation? this will be true
    if inherited:
      break

  # find _the_virtual_env in misc.xml
  if inherited:
    for line in open("misc.xml").readlines():
      env_at_project_creation = re.findall("\~/(.*)\" project-jdk", line.strip())
      if env_at_project_creation:
        print env_at_project_creation[0] + "/bin/activate"
        break
finally:
  pass
')

if [ "$ACTIVATERC" ] ; then . "$HOME/$ACTIVATERC" ; fi

ধন্যবাদ, এটি আমার পক্ষে কাজ করেছে! যদিও দুটি অতিরিক্ত জিনিস করতে হয়েছিল। 1) যুক্ত করো source /etc/profile~ / .pycharmrc ফাইল (ম্যাক ইয়োসেমাইট দিকে) 2) Pycharm অভিরুচি সম্পাদনা> সরঞ্জাম> টার্মিনাল> শেল পথ "/ বিন / ব্যাশ --rcfile ~ / .pycharmrc" করার প্রারম্ভে
frnhr

এটি দুর্দান্ত, আপনাকে ধন্যবাদ! আপনি যদি পাইথন 3 ব্যবহার করেন তবে মুদ্রণ ফাংশনের জন্য বন্ধনী লিখতে ভুলবেন না। আমাকে নিজেই এই স্ক্রিপ্টের আগে "এক্সপোর্ট ~ / .bashrc" রাখতে হয়েছিল।
রাফাল গোমস

5

আমি উপরের সমস্ত উত্তর দেখেছি কিন্তু সেগুলির কোনওোটাই আমার পক্ষে যথেষ্ট মার্জিত নয়। পাইচার্ম 2017.1.3 এ (আমার কম্পিউটারে), সবচেয়ে সহজ উপায় হ'ল খোলা Settings->Tools->Terminalএবং চেক করা Shell integrationএবং Activate virtualenvবিকল্পগুলি।

ভাবমূর্তি


ঠিক আছে, গৃহীত উত্তর এই খুব একই জিনিস উদ্ধৃত। এটি ঠিক যে এটির ছবি নেই।
বিকাশ প্রসাদ

5

আপনি যদি উইন্ডোজ সংস্করণ ব্যবহার করেন তবে এটি বেশ সহজ। আপনার যদি ইতিমধ্যে ভার্চুয়াল পরিবেশটি কেবল তার ফোল্ডারে নেভিগেট করে থাকে তবে ফোল্ডারের activate.batঅভ্যন্তর সন্ধান করুন Scripts। এটির পুরো পথটি অনুলিপি করুন এবং পাইচার্মের টার্মিনালে এটি পেস্ট করুন তারপরে টিপুন Enterএবং আপনি শেষ করেছেন!

আপনার যদি নতুন ভার্চুয়াল পরিবেশ তৈরি করতে হয়:

ফাইলগুলি> সেটিংসে যান তারপরে অনুসন্ধান করুন project interpreter, এটি খুলুন, গিয়ার বোতামে ক্লিক করুন এবং যেখানেই চান পরিবেশ তৈরি করুন এবং তারপরে প্রথম অনুচ্ছেদটি অনুসরণ করুন।

গিয়ার!


দুর্দান্ত উত্তর! ধন্যবাদ! দ্রুত প্রশ্ন. আমার 3 টি আলাদা ভার্চুয়াল পরিবেশ রয়েছে যা আমি অ্যানাকোন্ডায় তৈরি করেছি। activate.batতাদের প্রত্যেকের জন্য আলাদা আছে ?
ব্যবহারকারী 1700890

1
@ ইউজার 1700890 হ্যাঁ! যদি আপনি পরিবেশগুলি ওভাররাইট না করে থাকেন তবে তাদের পৃথক ফোল্ডার এবং ফলস্বরূপ পৃথক activate.batফাইল থাকা উচিত। আপনি যদি উত্তরটি পছন্দ করেন তবে নির্দ্বিধায়
উদ্বিগ্ন হন

আপনাকে ধন্যবাদ, আমি স্রেফ পরীক্ষা করে দেখেছি, Scriptsফোল্ডারে কোনও ফোল্ডার নেই । এছাড়াও পাইচার্ম অভিযোগ করেছেন যে activate.batএকটি বৈধ অজগর এসডিকে নয়
ব্যবহারকারী 1700890

1
সুতরাং আমি মনে করি আপনার প্রথম চেষ্টা করা উচিত এবং যখন আপনি অ্যানাকোন্ডা ব্যবহার করছেন তখন তৈরি ভার্চুয়াল-পরিবেশ ফোল্ডারটি খুঁজে বের করা উচিত এবং তারপরে তার মধ্যে activateব্যাচ ফাইলটি চালানো উচিত। বা যদি এটি আপনার পক্ষে সম্ভব হয় তবে কেবল একটি নতুন পরিবেশ তৈরি করতে যান।
AmiNadimi

3

ম্যাকের উপরে এটি পাইচার্ম => পছন্দসমূহ ... => সরঞ্জামগুলি => টার্মিনাল => অ্যাক্টিভেট করুন ভার্চুয়ালেনভ , যা ডিফল্টরূপে সক্ষম করা উচিত।


2

আমি সবেমাত্র আমার হোম ডিরেক্টরিতে পাইচার্ম্যাকটিভেট নামের একটি স্ক্রিপ্ট যুক্ত করেছি। পাইচার্মের মান নির্ধারণ করুন (৪.০.১) ফাইল> সেটিংস> সরঞ্জামসমূহ> টার্মিনাল> শেল পাথ / বিন / ব্যাশ --rcfile ~ / পাইকর্ম্যাকটিভেতে। আপনার কাছে বিভিন্ন প্রকল্প এবং ভার্চুয়ালেনভ ডিরেক্টরি / নাম থাকলেও সর্বোত্তম সমাধান না হলেও এটি আমার পক্ষে কার্যকর। এই স্ক্রিপ্টটিতে নিম্নলিখিত 3 টি লাইন রয়েছে এবং ধরে নিন যে আপনার ভার্চুয়ালেনভের আপনার প্রকল্প দিরের একই নাম রয়েছে।

source ~/.bashrc
projectdir=${PWD##*/}
source ~/.virtualenvs/$projectdir/bin/activate


1

আমার একটি সমাধান রয়েছে যা আমার উইন্ডোজ 7 মেশিনে কাজ করেছিল।

আমি বিশ্বাস করি PyCharm এর টার্মিনাল চলমান এটি একটি ফল cmd.exe, যা উইন্ডোজ লোড করা হবে PATHপরিবর্তনশীল, এবং যে এটা যে মধ্যে প্রথম খুঁজে বের করে Python- র সংস্করণ ব্যবহার PATH। এই ভেরিয়েবলটি সম্পাদনা করতে, আমার কম্পিউটার -> বৈশিষ্ট্য -> উন্নত সিস্টেম সেটিংস -> উন্নত ট্যাব -> পরিবেশগত পরিবর্তনসমূহ ... বোতামে ডান ক্লিক করুন। মধ্যে সিস্টেম ভেরিয়েবল অধ্যায়, নির্বাচন এবং সম্পাদনা PATHপরিবর্তনশীল।

সম্পাদনার PATH আগে আমার প্রাসঙ্গিক অংশটি এখানে :

সি: \ Python27 \;
সি: \ Python27 \ প্রচ্ছদ \ সাইট-প্যাকেজ \ পিপ \;
সি: \ Python27 \ স্ক্রিপ্ট;
সি: \ Python27 \ প্রচ্ছদ \ সাইট-প্যাকেজ \ জ্যাঙ্গো \ বিন;

... এবং সম্পাদনার পরেPATH (কেবলমাত্র 3 টি লাইন):

সি: [project_path] \ virtualenv-Py2.7_Dj1.7 \ প্রচ্ছদ \ সাইট-প্যাকেজ \ পিপ;
সি: [project_path] \ virtualenvs \ virtualenv-Py2.7_Dj1.7 \ স্ক্রিপ্ট;
সি: [project_path] \ virtualenvs \ virtualenv-Py2.7_Dj1.7 \ প্রচ্ছদ \ সাইট-প্যাকেজ \ জ্যাঙ্গো \ বিন;

এটি পরীক্ষা করতে, একটি নতুন উইন্ডোজ টার্মিনাল খুলুন ( স্টার্ট -> টাইপ করুন cmdএবং হিট Enter) এবং দেখুন এটি আপনার ভার্চুয়াল পরিবেশ ব্যবহার করছে কিনা। যদি এটি কাজ করে তবে পাইচার্ম পুনরায় চালু করুন এবং তারপরে পাইচার্মের টার্মিনালে এটি পরীক্ষা করুন।


1

এটি আমি যা করছি: উত্স কোড ফোল্ডে একটি অ্যাক্টিভেট_েনভ.ব্যাট (উইন্ডোজ, লিনাক্সে .sh) ফাইল তৈরি করুন:

/env_yourenvlocate/scripts/activate.bat

এবং অন্য একটি ফাইল নিষ্ক্রিয়_আন.ভ্যাট:

/env_yourenvlocate/scripts/deactivate.bat

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

E:\Projects\django_study\src>active_env.bat

E:\Projects\django_study\src>../env_django_study/scripts/activate.bat
(env_django_study) E:\Projects\django_study\src>



(env_django_study) E:\Projects\django_study\src>deactive_env.bat

(env_django_study)E:\Projects\django_study\src>../env_django_study/scripts/deactivate.bat
E:\Projects\django_study\src>

1

যদি আপনার পাইচার্ম 2016.1.4v বা তার বেশি হয় তবে আপনার উদ্ধৃতিগুলি ভুলে "default path" /K "<path-to-your-activate.bat>" যাবেন না


1

আপনি যদি আপনার প্রকল্পটিকে অন্য ডিরেক্টরিতে স্থানান্তরিত করেন তবে সেটিংস সংলাপের মাধ্যমে আপনি নতুন পথটি সেট করতে পারেন। এবং তারপরে আপনার কনফিগারেশন সম্পাদনা ডায়ালগটিতে এই প্রকল্প ইন্টারপ্রেটার সেট করতে হবে।

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

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


0

আরেকটি বিকল্প ব্যবহার করা virtualenvwrapper আপনার ভার্চুয়াল পরিবেশে পরিচালনা করতে। এটি প্রদর্শিত হয় যে একবার ভার্চুয়ালেনভ্রাপার স্ক্রিপ্টটি সক্রিয় হয়ে গেলে, পাইচার্ম এটি ব্যবহার করতে পারে এবং তারপরে workonপিচারম কনসোল থেকে সহজ কমান্ডটি পাওয়া যাবে এবং আপনাকে উপলভ্য ভার্চুয়াল পরিবেশের সাথে উপস্থাপন করবে:

kevin@debian:~/Development/django-tutorial$ workon
django-tutorial
FlaskHF
SQLAlchemy
themarkdownapp
kevin@debian:~/Development/django-tutorial$ workon django-tutorial
(django-tutorial)kevin@debian:~/Development/django-tutorial$ 

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

@ ক্রিসকোগডন আহ, আমি দেখছি
ksaylor11

0

এই পদ্ধতিটি প্রতিটি প্রকল্পে স্বেচ্ছাসেবক ভার্চুয়াল পরিবেশের সাথে কাজ করা উচিত এবং এটি আপনার পরিবেশকে অনুমান করে না কারণ এটি আপনার তৈরি হুক ব্যবহার করছে।

তুমি লেখ:

  • একটি বিশ্বব্যাপী স্ক্রিপ্ট যা হুককে ডাকে
  • পাইচর্ম প্রকল্পে একটি হুক স্ক্রিপ্ট (বাধ্যতামূলক নয়)

প্রদত্ত যে বর্তমান সর্বশেষতম পাইচার্ম (সম্প্রদায় 2016.1) প্রতি প্রকল্পের জন্য টার্মিনাল সেটিংসের জন্য স্ক্রিপ্টটি প্রজেক্ট নির্দিষ্ট হুককে অনুরোধ করে তা শুরু করার অনুমতি দেয় না । এটি আমার ~/.pycharmrc:

if [ -r ".pycharm/term-activate" ]; then
   echo "Terminal activation hook detected."
   echo "Loading Bash profile..."
   source ~/.bash_profile
   echo "Activating terminal hook..."
   source ".pycharm/term-activate"
   source activate $PYCHARM_VENV
fi

আপনি যদি বাশ ব্যতীত অন্য কিছু ব্যবহার করে থাকেন তবে নিজেরাই অনুরোধ করুন .bash_profile ইচ্ছে মতো সমতুল্য ।

এই স্ক্রিপ্টটি চাওয়ার জন্য এখন আপনার পাইচার্ম "সরঞ্জাম -> টার্মিনাল -> শেল পথ" সেট করুন, যেমন: /bin/bash --rcfile ~/.pycharmrc

সবশেষে, প্রতিটি পাইচর্ম প্রকল্পের জন্য আপনার নির্দিষ্ট ভার্চুয়াল পরিবেশ সক্রিয় করা দরকার, পাইচর্ম প্রকল্পের মূলের মধ্যে একটি ফাইল তৈরি করুন .pycharm/term-activate। এটি আপনার হুক এবং এটি আপনার পাইচর্ম প্রকল্পের জন্য পছন্দসই ভার্চুয়াল পরিবেশের নামটি সংজ্ঞায়িত করবে:

export PYCHARM_VENV=<your-virtual-env-name>

আপনি অবশ্যই আপনার বিশেষ পাইচর্ম প্রকল্পের টার্মিনাল পরিবেশে দরকারী বলে যে কোনও কিছু দিয়ে অবশ্যই আপনার হুকগুলি প্রসারিত করতে পারেন।


0

উইন্ডোজে কনডা ভার্চুয়াল পরিবেশের জন্য, আপনার ব্যাচ ফাইলটির নামকরণ activate.batকরা হয়নি তা নিশ্চিত করুন এটি কনডা activateকমান্ডের সাথে বিরোধ সৃষ্টি করবে , যার ফলে ব্যাচ ফাইলটির পুনরাবৃত্তি কলিং হবে।

আমার জন্য যা কাজ করে তা হ'ল নিম্নলিখিত শেল পথ:

"cmd.exe" /k ""C:\FullPathToYourProject\activate-env.bat""

এবং সক্রিয়- env.bat ফাইলটিতে:

call activate myenvname

0

আমি প্রতিটি প্রকল্পের জন্য পৃথক ভার্চুয়াল পরিবেশ চাইতাম এবং এটিকে সহজ করার জন্য অতিরিক্ত ফাইল রাখার জন্য খুব বেশি যত্ন নিই না। একটি সমাধান যা আপনাকে কেবল একবারে করতে হবে এবং সমস্ত প্রকল্পের জন্য কাজ করবে তারপরে আপনার .bashrcবা নিম্নলিখিতগুলিতে নিম্নলিখিতটি যুক্ত করা হবে .bash_profile:

if [ -d "./venv" ]; then
    source ./venv/bin/activate
fi

টার্মিনালটি খোলার মতো ভার্চুয়াল পরিবেশ রয়েছে কিনা এবং এটি যদি সক্রিয় করে (এবং অবশ্যই অন্যান্য আপেক্ষিক পাথ ব্যবহার করা যেতে পারে) এটি পরীক্ষা করে। পাইচার্মের টার্মিনাল সেটিংস তাদের ডিফল্ট হিসাবে রেখে দেওয়া যেতে পারে।


0

পাইচার্ম 4.5.4

নিম্নলিখিত বিষয়বস্তু সহ আপনার হোম ফোল্ডারে একটি ফাইল .pycharmrc তৈরি করুন

source ~/.bashrc
source ~/pycharmvenv/bin/activate

শেষ প্যারামিটার হিসাবে আপনার ভার্চুয়ালেনভ পাথ ব্যবহার করে।

তারপরে শেল পছন্দসমূহ-> প্রকল্প সেটিংস-> শেল পথটি সেট করুন

/bin/bash --rcfile ~/.pycharmrc

আমি কেন করি না, তবে এটি আমার পক্ষে কাজ করে না। পাইচার্ম একটি ত্রুটি মুদ্রণ করে।

cmd.exe /K "<path-to-your-activate.bat>" এটি কাজ করে, তবে এটি প্রতিটি প্রকল্পের জন্য একই ভার্চুয়ালেনভ তৈরি করে এবং এমনকি এটি প্রয়োজনীয় না হলেও।

এই রসিদ কাজ করছে! তবে স্ট্রিংয়ে /env_yourenvlocate/scripts/activate.batঅবশ্যই এই উক্তি থাকতে হবে"Full_path_to_your_env_locate\scripts\activate.bat" !

ভার্চুয়ালেনভ নিষ্ক্রিয় করা খুব সহজ - টার্মিনালে টাইপ করুন 'নিষ্ক্রিয়'

(virt_env) D:\Projects\src>deactivate
D:\Projects\src>

"আমি তা করি না তবে এটি আমার পক্ষে কার্যকর হয় না" - কারণ এই সমাধানটি লিনাক্স / ম্যাকের পক্ষে ভাল - উইন্ডোগুলির পক্ষে নয়? ;)
নীর আলফাসি

0

ডাব্লুএসএল এর জন্য সমাধান (উইন্ডোতে উবুন্টু)

যদি আপনি ডাব্লুএসএল (উইন্ডোজে উবুন্টু) ব্যবহার করেন তবে আপনি পাইচার্মে টার্মিনাল হিসাবে ব্যাশ খুলতে এবং একটি লিনাক্স ভার্চুয়ালেনভকে সক্রিয় করতে পারেন।

.pycharmrcপিটার গিবসনের উত্তরে বর্ণিত একটি ফাইল ব্যবহার করুন ; .pycharmrcনিম্নলিখিত কন্টেন্ট সহ আপনার হোম ডিরেক্টরিতে ফাইল যুক্ত করুন :

source ~/.bashrc
source ~/path_to_virtualenv/bin/activate

পাইচার্ম ফাইল> সেটিংস> সরঞ্জামসমূহ> টার্মিনালে নিম্নলিখিত 'শেল পথ' যুক্ত করুন:

"C:/Windows/system32/bash.exe" -c "bash --rcfile ~/.pycharmrc"


প্রকল্পের জন্য নির্দিষ্ট ভার্চুয়ালেনভ

আপনার ভ্যুচুয়ালেনভের পথে .pycharmrcচূড়ান্ত হতে হবে না। আপনি আপনার প্রকল্প ডিরেক্টরি থেকে একটি আপেক্ষিক পথ সেট করে একটি প্রকল্প নির্দিষ্ট virtualenv সেট করতে পারেন। আমার ভার্চুয়ালেনভ সর্বদা আমার প্রকল্প ডিরেক্টরিতে একটি 'ভেনভ' ফোল্ডারে থাকে তাই আমার.pycharmrc ফাইলটি এরকম দেখাচ্ছে:

উত্স ~ / .bashrc
 উত্স ~ / পাইচার্মভিনভ / বিন / সক্রিয় # অবিসোলিউথ পাথ
উত্স ./venv/bin/ activate # রিলেটিভ পাথ


বোনাস: প্রকল্প দোভাষী হিসাবে ভার্চুয়ালেনভকে সংযুক্ত করতে স্বয়ংক্রিয়ভাবে ssh টানেলটি খুলুন

আপনার .pycharmrcফাইলে নিম্নলিখিতগুলি যুক্ত করুন:

if [ $(ps -aux | grep -c 'ssh') -lt 2 ]; then
    sudo service ssh start 
fi

এটি কোনও ssh টানেল ইতিমধ্যে খোলা আছে কিনা তা পরীক্ষা করে এবং অন্যথায় এটি খোলার জন্য। ইন ফাইল -> সেটিংস -> প্রকল্প -> প্রকল্প ইন্টারপ্রেটার Pycharm, নিম্নলিখিত কনফিগারেশন সঙ্গে একটি নতুন দূরবর্তী অনুবাদক যোগ করুন:

+ + -------------------------- + + ---------------------- ----------- + + ------- + + ---- + +
| নাম: | <দোভাষী নাম> | | |
| | নির্বাচন করুন 'এসএসএইচ শংসাপত্র' | | |
| হোস্ট: | 127.0.0.1 | বন্দর: | 22 |
| ব্যবহারকারী: | <লিনাক্স ব্যবহারকারী নাম> | | |
| প্রকারের ধরন: | 'পাসওয়ার্ড' | | |
| পাসওয়ার্ড: | <লিনাক্স পাসওয়ার্ড> | | |
| পাইথন দোভাষী পথ: | <আপনার ভার্চুয়ালনেভের লিনাক্স পাথ> | | |
| পাইথন সহায়কদের পথ: | <স্বয়ংক্রিয়ভাবে সেট করুন> | | |
+ + -------------------------- + + ---------------------- ----------- + + ------- + + ---- + +

এখন আপনি যখন আপনার প্রকল্পটি খুলবেন, আপনার ব্যাশ স্বয়ংক্রিয়ভাবে আপনার ভার্চুয়ালনেভ থেকে শুরু হবে, একটি এসএস টানেল খুলবে এবং পাইচার্ম ভ্যুচুয়ালেনভকে দূরবর্তী দোভাষী হিসাবে সংযুক্ত করে।

সতর্কতা: উইন্ডোজের সর্বশেষ আপডেটটি স্বয়ংক্রিয়ভাবে শুরুতে একটি SshBroker এবং SshProxy পরিষেবা শুরু করে। এগুলি লিনাক্স থেকে উইন্ডোতে এসএসএস টানেল অবরোধ করে। আপনি এই পরিষেবাগুলিকে টাস্ক ম্যানেজার -> পরিষেবাগুলিতে বন্ধ করতে পারেন, যার পরে সবকিছু আবার কাজ করবে।


0

আপনি টার্মিনালটি প্রবেশ করার সময় আপনার কাছে একটি বিকল্প থাকে> চালান> ডিবাগ> কনফিগারেশন সম্পাদনা করুন এখানে চিত্র বর্ণনা লিখুন

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

উপযুক্ত কনডা পরিবেশ নির্বাচন করুন .. এছাড়াও যখন আপনি একটি নতুন প্রকল্প তৈরি করেন - এটি এই অবস্থানটি কনফিগার করতে বলে।

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