সি ++ কোড মুদ্রণের জন্য পাঠ্য সম্পাদক


34

আমি সিডি (কোডে) সি ++ কোড মুদ্রণের জন্য একটি সম্পাদক খুঁজছি। আমি বর্তমানে ইঞ্জিনিয়ারিং স্কুলে আছি এবং প্রশিক্ষক আমাদের কাগজে কোড জমা দিতে বলেছিলেন।

তিনি নাম + উপাধি, শ্রেণীর নম্বর (শিরোনামে), নীচে পৃষ্ঠার সংখ্যা এবং প্রতিটি পৃষ্ঠার জন্য সাহসী শব্দ চাইছেন!

উইন্ডোজ এটি দিয়ে করা যেতে পারে notepadd++। তবে আমি লিনাক্সে আছি এবং আমি কোনও আইডিই বা পাঠ্য সম্পাদক খুঁজে পাইনি যা কাজ করে। (আমি ইতিমধ্যে চেষ্টা করেছি SCITE, geditএবং Syntaxic)


4
a2ps আপনার বন্ধু। এটি কনফিগার করতে আপনার সময় নিন।
সাটস ক্যাটসুরা


30
মনে হচ্ছে আপনার শিক্ষক লগিং ইন্ডাস্ট্রিতে বিনিয়োগ করেছেন।
অ্যান্থন

10
আপনার শিক্ষক কোড চান ... কাগজে ?!
মনিকার সাথে লাইটনেস রেস

8
@ loi219 একজন "পুরাতন-স্কুল" শিক্ষক বা একজন পুরানো "স্কুল শিক্ষক", বা উভয়ই? ;-)
user800

উত্তর:


76

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

  1. একটি ল্যাটেক্স সিস্টেম এবং প্রয়োজনীয় প্যাকেজ ইনস্টল করুন

    sudo apt-get install texlive-latex-extra latex-xcolor texlive-latex-recommended
    
  2. report.texনিম্নলিখিত বিষয়বস্তু সহ একটি নতুন ফাইল (কল করুন ) তৈরি করুন :

    \documentclass{article}
    \usepackage{fancyhdr}
    \pagestyle{fancy}
    %% Define your header here. 
    %% See http://texblog.org/2007/11/07/headerfooter-in-latex-with-fancyhdr/
    \fancyhead[CO,CE]{John Doe, Class 123}
    
    \usepackage[usenames,dvipsnames]{color}  %% Allow color names
    
    %% The listings package will format your source code
    \usepackage{listings}
    \lstdefinestyle{customasm}{
      belowcaptionskip=1\baselineskip,
      xleftmargin=\parindent,
      language=C++,
      breaklines=true, %% Wrap long lines
      basicstyle=\footnotesize\ttfamily,
      commentstyle=\itshape\color{Gray},
      stringstyle=\color{Black},
      keywordstyle=\bfseries\color{OliveGreen},
      identifierstyle=\color{blue},
      xleftmargin=-8em,
      showstringspaces=false
    }        
    \begin{document}
    
    \lstinputlisting[style=customasm]{/path/to/your/code.c}
    
    \end{document}
    

    কেবলমাত্র /path/to/your/code.cপেনাল্টিমেট লাইনে পরিবর্তন নিশ্চিত করুন যাতে এটি আপনার সি ফাইলের আসল পথে নির্দেশ করে। যদি আপনার একাধিক ফাইল অন্তর্ভুক্ত থাকে \newpageতবে \lstinputlistingঅন্য ফাইলের জন্য একটি এবং তারপরে একটি নতুন যুক্ত করুন।

  3. একটি পিডিএফ সংকলন করুন (এটি তৈরি করে report.pdf)

    pdflatex report.tex    
    

আমি আমার সিস্টেমে এটি একটি উদাহরণ ফাইল দিয়ে পরীক্ষা করেছি যা এখানে পাওয়া গেছে এবং এটি এমন একটি পিডিএফ তৈরি করে যা দেখে মনে হয়:

তৈরি পিডিএফ প্রথম পাতা

আরও বিস্তৃত উদাহরণের জন্য যা লক্ষ্য ফোল্ডারে সমস্ত .c ফাইলগুলি স্বয়ংক্রিয়ভাবে সন্ধান করবে এবং প্রতিটিের সাথে একটি পৃথক বিভাগে একটি সূচক পিডিএফ ফাইল তৈরি করবে, আমার উত্তরটি এখানে দেখুন


17
যত তাড়াতাড়ি আপনি ল্যাটেক্স দিয়ে শুরু করবেন আপনি আর ছাড়তে পারবেন না! আমি আশা করি আমি উচ্চ বিদ্যালয়ে টেক্সকে জানতাম ... (বা তারা এটি শব্দের বিকল্প হিসাবে শেখাত)।
কিসলিক 18

2
আমি মনে করব যে বেশিরভাগ সিস্টেমে, বিশেষত একটি ইঞ্জিনিয়ারিং স্কুলে ল্যাটেক্স ডিফল্টরূপে ইনস্টল করা হবে। কমান্ড প্রম্পটে "যা ক্ষীর" টাইপ করুন: যদি এটি কোনও পথ দেয়, সাধারণত / usr / bin / ক্ষীর আসে তবে আপনি পদক্ষেপ # 1 এড়িয়ে যেতে পারেন। এছাড়াও, যদি আপনার পছন্দের সম্পাদকটির একটি শালীন ম্যাক্রো ভাষা থাকে তবে আপনি লাইভ আউটপুট প্রদর্শন করতে উদাহরণস্বরূপ "gv --watch" ব্যবহার করে সম্পাদকের মধ্যে থেকে এই স্ক্রিপ্টটি চালাতে পারেন।
জামেস্কেফ

4
@ জামেস্কেফ আমি ডিফল্টরূপে LaTeX ইনস্টল করা সিস্টেম দেখিনি। হ্যাঁ, কোনও বিদ্যালয়ের আইটি লোকেরা এটি ইনস্টল করে থাকতে পারে এবং ডিফল্টরূপে এটির জন্য বিশেষত লিনাক্স বিতরণ থাকতে পারে, তবে বেশিরভাগ সিস্টেমে তা হবে না।
টেরডন

3
@ ইটারডন - আমি ল্যাকটেক্স ছাড়া কোনও ইঞ্জিনিয়ারিং বিভাগে কোনও ইনস্টলেশন কখনও দেখিনি । যার মুদ্রণযোগ্য আউটপুট উত্পাদন করা প্রয়োজন এটির পক্ষে এটি অত্যন্ত প্রয়োজনীয়।
টবি স্পিড

1
@ ইটারডন: 'ডিফল্ট' বা ইনস্টল-এ নির্বাচিত। আমি আমার সিস্টেমে (ওপেনসুএস) ল্যাটেক্স পাওয়ার জন্য বিশেষ কিছু করার কথা মনে করতে পারি না, তবে শেষ ইনস্টলটি করার পরে কিছুক্ষণ হয়ে গেল। যেভাবেই হোক, চেক করা সহজ।
জামেস্কেফ

29

আমি সাধারণত এনসক্রিপ্ট ব্যবহার করি: এরকম কিছু

$ enscript --highlight=cpp
           --header='|Real Name|Class 101'
           --footer='|Page $% of $=|'
           -poutput.ps *.cpp

এটি একটি সূচনা হবে - এতে পোস্টস্ক্রিপ্ট আউটপুট লিখেছে output.ps, যাতে আপনি কনফিগারেশনের সাথে ঝাঁকুনির সময় পূর্বরূপ ও ওভাররাইট করতে পারেন এবং আপনি খুশি হয়ে গেলে এটি মুদ্রণ করতে পারেন। আরও বিস্তৃত বিকল্পগুলির জন্য ম্যান পৃষ্ঠাটি দেখুন।

পাদলেখকে সঠিকভাবে কাজ করার জন্য সম্পাদনা করা এনস্ক্রিপ্টের সাথে কিছুটা ব্যথা হয় - আমি কখনই লক্ষ্য করিনি কারণ আমার এটির প্রয়োজন হয় নি। আপনি যদি এই ফাইলটিতে সংরক্ষণ করেন ~/.enscript/so.hdr(আপনার সম্ভবত ডিরেক্টরি তৈরি করতে হবে), আপনি আসলে এর সাথে প্রয়োজনীয় আউটপুট পাবেন

$ enscript --highlight=cpp
           --header='|Real Name|Class 101'
           --footer='|Page $% of $=|'
           --fancy-header=so
           -poutput.ps *.cpp

দান

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


মোটামুটিভাবে,

  • LaTeχ সেরা মানের এবং সেট আপ করার জন্য সর্বাধিক কাজ,
  • এনক্রিপ্ট বা a2ps গুণ এবং কাজের উভয় ক্ষেত্রেই মধ্যবর্তী হয়,
  • ভিএম-এর :hardcopyকমান্ড সহজ তবে এটি নমনীয় নয় এবং
  • নন-কোড-সচেতন সম্পাদকটিতে ম্যানুয়ালি হাইলাইট করে সিনট্যাক্স করা দুর্বল প্রত্যাবর্তনের জন্য অনেক প্রচেষ্টা।

এটি হ'ল আমি যা অনুসন্ধান করছি। আপনাকে অনেক ধন্যবাদ!
loi219

আমি দ্বিতীয় emscript। এটিতে প্রচুর পরিমাণে বিকল্প রয়েছে এবং এটি খুব ভাল ফলাফল দেয়।
রুবিক

9

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

এটি সম্ভবত :hardcopyবেহুদা দ্বারা উল্লিখিত আদেশের অনুরূপ , তবে আমি এখনই আমার সিস্টেমে যাচাই করতে পারি না।

আরেকটি সম্ভাবনা হ'ল কিউটিক্রিটার থেকে মুদ্রণ করা, তবে শিরোনাম / পাদচরণগুলি সেট করার কোনও উপায় বলে মনে হচ্ছে না।


4

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

সংরক্ষিত শব্দগুলি বিকল্প মেনুতে ম্যানিপুলেট করা যায় তবে কোড হাইলাইট করে নোটপ্যাড ++ শৈলীর জন্য এটি করা হয়। (আপনার পছন্দসইটি পেতে আপনার "/ home/$USER_NAME/.config/geany/colorschemes/" ফোল্ডারে রঙিন স্কিমগুলি অনুলিপি / ডাউনলোড করতে হবে)

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

এছাড়াও জিনি উইন্ডো এবং লিনাক্স উভয় ক্ষেত্রেই চলে।

পৃষ্ঠা 1

পৃষ্ঠা ২

পৃষ্ঠা 3


2

যেহেতু আপনি একটি জন্য অনুরোধ সম্পাদক , আপনি গিয়ে Emacs থেকে সরাসরি মুদ্রণ করতে পারেন ব্যবহার ps-print-buffer

শিরোনাম এবং পাদচরণগুলি কাস্টমাইজ করা গ্রুপে রয়েছে ps-print-headers

ধরে নিই যে আপনি ফন্ট-লক ব্যবহার করেছেন, সম্ভবত আপনার প্রয়োজনীয় সিনট্যাক্স হাইলাইটিং রয়েছে। এটি প্রয়োজন হলে, ps-extend-faceফাংশনটি ব্যবহার করে সামঞ্জস্য করা যায় ।


এটি বলার পরেও আমি আপনাকে সুপারিশ করব যে আপনি যথাযথ 'গ্রাইন্ড' সরঞ্জাম ব্যবহার করুন যেমন a2ps, এনক্রিপ্ট, বা ল্যাটেক্স + তালিকাগুলি।


1

সম্পূর্ণতার জন্য, এবং যদিও আমি সেই সমাধানটি সুপারিশ করব না, lpপ্রোগ্রামটির একটি -o prettyprintবিকল্প রয়েছে যা সিনট্যাক্স হাইলাইটিং করতে পারে।

আপনি এটি উদাহরণস্বরূপ এটি ব্যবহার করতে পারেন:

lp -t "Name Surname | Class" -o document-format=application/x-csource -o prettyprint path/to/code.cpp

এখানে আমি -tশিরোনাম সেট করতে (শিরোনাম) বিকল্পটি ব্যবহার করেছি । যদিও আমি পাদচরণ পরিবর্তন করতে পারি না (তবে পৃষ্ঠার নম্বরটি শীর্ষে প্রদর্শিত হবে)। আপনি বিকল্পটি দিয়ে ফাইলের ধরণটি সেট করতে পারেন -o document-format (গ্রহণযোগ্য মানের তালিকার মধ্যে থাকা উচিত /usr/share/cups/mime/mime.typesবা হতে পারে /etc/cups/mime/mime.types) তবে আপনার ফাইলটির সঠিক এক্সটেনশন থাকলে এটি প্রয়োজনীয় হওয়া উচিত নয়। এছাড়াও, সিনট্যাক্স হাইলাইটিং নিখুঁত হওয়া থেকে অনেক দূরে।


1

আপনার কেবল লিবারঅফিস লেখক দরকার ।

আপনার সি / সি ++ কোড আটকান।

শব্দগুলি সন্ধান করুন এবং বোল্ড সমস্ত সি ++ কীওয়ার্ড করুন।

আপনি এগুলি এখানে পেতে পারেন: http://en.cppreferences.com/w/cpp/keyword

একটি শব্দ সন্ধানের জন্য Ctrl + F টিপুন

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

এর পরে আপনার নাম এবং পৃষ্ঠা নম্বর সহ আপনার একটি শিরোনাম এবং পাদচরণ দরকার।

সম্পাদনা: ( ক্রিস্টোফ স্ট্রোব মন্তব্য করেছেন):

কোড কালারিংয়ের জন্য একটি লিব্রেফিস এক্সটেনশান রয়েছে: কোড কালারাইজার ফরম্যাটার । (আমি এখনও এটি পরীক্ষা করি নি।)


41
Eww, ম্যানুয়াল সিনট্যাক্স হাইলাইট।
বেহুদা

আপনার কিছু ধারণা আছে?
loi219

7
এছাড়াও, ভেরিয়েবল-প্রস্থের ফন্টের eww কোড :(
বিড়াল

2
কোড কালারিংয়ের জন্য একটি লিব্রেফিস এক্সটেনশান রয়েছে: কোড কালারাইজার ফরম্যাটার । (আমি এটি এখনও পরীক্ষা করি নি))
ব্যবহারকারী 800

1
এটি বেদনাদায়ক দেখাচ্ছে
জো

0

আমি জিইআইআই ইন্টারফেস পছন্দ করায় অনেক বছর আগে আমি যখন সোলারিস সিস্টেমে ছিলাম তখন আমি নেদিত ব্যবহার করতাম। আমি দেখতে পাচ্ছি যে এটি এখনও প্রায় রয়েছে। এটা দেখ.


-2

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


2
এটি আসলে প্রশ্নের উত্তর দেয় না, তাই না?
কাউন্টারমোড

আসলে এটি প্রশ্নের উত্তর দেয়। উত্তরটি হ'ল: "কেট একবার দেখুন, এটি আমার পক্ষে অতীতে ভাল প্রমাণিত হয়েছিল"
আর্নে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.