আপনি নিম্নলিখিত সেটআপটিতে এটি করতে পারেন, যা একটি অর্ধ-স্বচ্ছ উইন্ডো উত্পাদন করবে, স্বেচ্ছাসেবী সময় থাকার জন্য:
একটি (যে কোন) ডিরেক্টরির মধ্যে তৈরি করুন, এখানে ব্যবহারকারীদের প্রতিটি কমপক্ষে করেছে পড়তে অনুমতি কে একটি বার্তা ফাইল প্রত্যেক ব্যবহারকারীর জন্য, ঠিক প্রত্যেক ব্যবহারকারীর ব্যবহারকারীর নাম পর (নাম লগ ইন) নামে, কোন এক্সটেনশন, যেমন
jacob
আপনার বার্তা হিসাবে ফাইলে পাঠ্য যুক্ত করুন। আপনি যদি কোনও নতুন বার্তা যুক্ত করেন তবে এর সাথে শুরু করুন ###
, স্ক্রিপ্টটি স্বয়ংক্রিয়ভাবে শেষ বার্তাটি প্রদর্শন করবে। পাঠ্যে আপনার পছন্দের যে কোনও কিছু থাকতে পারে, আপনি এটি ফাইলের মধ্যে রেখে দেওয়ার মতো দেখতে পাবেন।
সর্বশেষ বার্তা, যেমন অনুলিপি করা হবে latest_message.txt
রেফারেন্সের জন্য ব্যবহারকারীর হোম ডিরেক্টরিতে।
যেমনটি রয়েছে, উইন্ডোটি 15 সেকেন্ডের জন্য স্থির থাকবে, তবে আপনি এটিকে যে কোনও মানতে সেট করতে পারেন এমনকি এটি স্বয়ংক্রিয়ভাবে পাঠ্যের দৈর্ঘ্যের উপর নির্ভর করে।
একটি উদাহরণ ফাইল দেখতে পারে:
Vraag:
Een aap op een fiets, hoe vind je zoiets?
Opdracht:
Geef antwoord op de vraag!
###
Vraag:
Hoe is de koffie vandaag?
Opdracht:
Zet het zelf even als het niet te drinken is!
বার্তাটি তখন দেখতে হবে:
নীচের স্ক্রিপ্টটি একটি খালি ফাইলে অনুলিপি করুন, আপনার স্ক্রিপ্টের শিরোনামের প্রধান অংশে আপনি যে ফোল্ডারে ব্যবহারকারীর (গুলি) বার্তাগুলি সঞ্চিত করছেন সেটিকে সম্পাদনা করুন। স্ক্রিপ্টটি show_personalmessage
(যেমন) হিসাবে সংরক্ষণ করুন /usr/local/bin
(যা এতে থাকা উচিত $PATH
এবং এটি সম্পাদনযোগ্য (!) করা উচিত (কোনও এক্সটেনশন নেই)
#!/usr/bin/env python3
import subprocess
import os
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import GObject, Gtk, Gdk, Pango
from threading import Thread
import time
import getpass
# --- set the path to the message files below, filename = username
filedir = "/home/jacob/Bureaublad"
# --- set the time to show the window below
showtime = 15
# ---
# don't change anything below
user = getpass.getuser()
currmessage = os.environ["HOME"]+"/latest_message.txt"
f = filedir+"/"+user
text = "Welcome "+user+"\n\n"+open(f).read().split("###")[-1]
open(currmessage, "wt").write(text)
class Splash(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title="splashtitle")
maingrid = Gtk.Grid()
self.add(maingrid)
maingrid.set_border_width(80)
# set text for the spash window
label = Gtk.Label(text)
label.modify_font(Pango.FontDescription('Ubuntu 12'))
maingrid.attach(label, 0, 0, 1, 1)
self.stop = Thread(target=self.close_window)
self.stop.start()
def close_window(self):
time.sleep(showtime)
Gtk.main_quit()
def splashwindow():
window = Splash()
window.set_decorated(False)
window.set_resizable(False)
window.override_background_color(Gtk.StateType.NORMAL, Gdk.RGBA(0,0,0,1))
window.modify_fg(Gtk.StateFlags.NORMAL, Gdk.color_parse("grey"))
window.set_opacity(0.8)
window.set_position(Gtk.WindowPosition.CENTER)
window.show_all()
GObject.threads_init()
Gtk.main()
splashwindow()
এতে একটি লঞ্চার তৈরি করুন /etc/xdg/autostart
[Desktop Entry]
Type=Application
Name=Splash
Exec=/bin/bash -c "sleep 10 && show_personalmessage"
ঘুম 10 হ'ল উইন্ডোটি খোলার জন্য ডেস্কটপ "প্রস্তুত" আছে তা নিশ্চিত করা।
ব্যাখ্যা
- লগ ইন প্রতিটি ব্যবহারকারীর জন্য
/etc/xdg/autostart
রান কমান্ডে প্রবর্তক ।
- লঞ্চারটি তখন উইন্ডোটি চালায় (কমান্ড দ্বারা ডাকা হয়
show_personalmessage
), যা আপনার সংজ্ঞায়িত ডিরেক্টরিটিতে ব্যক্তিগতকৃত বার্তাটি সন্ধান করে। উপরন্তু। সর্বাধিক সাম্প্রতিক বার্তাটি ব্যবহারকারীর হোম ডিরেক্টরিতে অনুলিপি করা হয়েছে।
- যদি প্রয়োজন হয় তবে বার্তাটির পথ পরিবর্তন করা যেতে পারে, এমনকি
getpass
-মডিউল ব্যবহার করে ব্যবহারকারীকে নির্দিষ্ট করে তোলা যেতে পারে , যাতে স্ক্রিপ্ট (উইন্ডো) কোনও ডিরেক্টরিতে একটি ব্যবহারকারী-নির্দিষ্ট নামের ফাইলটি সন্ধান করে। যদি এটি প্রয়োজন হয় দয়া করে উল্লেখ করুন।
উপরন্তু
(Gtk) উইন্ডো
- সবকিছুর নিচে থাকতে পারে, যেন এটি ব্যাকগ্রাউন্ডের অংশ হয়ে থাকে be
- সবকিছুর উপরে থাকতে পারে
- ঘনিষ্ঠ করা যেতে পারে
ইত্যাদি, ইত্যাদি ...
সম্পাদনা
সময়, বার্তা লেখা আলোচনা সংরক্ষণ করতে চ্যাটে স্ক্রিপ্ট যা আপনি কয়েক "স্থায়ী" বিভাগে অন্তর্ভুক্ত করতে পারে একটি সংস্করণ নীচে:
premsg
, যা "ওয়েলকাম ইউজার এক্স" এর নীচে এবং আপনার বার্তার মূল অংশ এবং and
postmsg
যা আপনার বার্তার নীচের অংশ হিসাবে আসে।
উভয় বিভাগকে কোনও হিসাবে সেট করা যায় না, কেবল ""
একটি মান হিসাবে সেট করে ।
এই পান্ডুলিপি
#!/usr/bin/env python3
import subprocess
import os
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import GObject, Gtk, Gdk, Pango
from threading import Thread
import time
import getpass
# --- set the path to the message files below, filename = username
filedir = "/path/to/message_directory"
# --- set the time to show the window below
showtime = 15
# --- set pre-message below. set premessage = "" for no pre-message
premsg = """We assume you read all 3782 instruction pages on how to use
Ubuntu before you push any button on this computer.
"""
# --- set post-message below. set postmessage = "" for no post-message
postmsg = """Before you go to sleep tonight, make sure to brush your
teeth for at least half an hour
"""
# --- don't change anything below
user = getpass.getuser()
currmessage = os.environ["HOME"]+"/latest_message.txt"
f = filedir+"/"+user
text = "Welcome "+user+"\n\n"+premsg+"\n"+open(f).read().split("###")[-1]+"\n"+postmsg
open(currmessage, "wt").write(text)
class Splash(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title="splashtitle")
maingrid = Gtk.Grid()
self.add(maingrid)
maingrid.set_border_width(80)
# set text for the spash window
label = Gtk.Label(text)
label.modify_font(Pango.FontDescription('Ubuntu 12'))
maingrid.attach(label, 0, 0, 1, 1)
self.stop = Thread(target=self.close_window)
self.stop.start()
def close_window(self):
time.sleep(showtime)
Gtk.main_quit()
def splashwindow():
window = Splash()
window.set_decorated(False)
window.set_resizable(False)
window.override_background_color(Gtk.StateType.NORMAL, Gdk.RGBA(0,0,0,1))
window.modify_fg(Gtk.StateFlags.NORMAL, Gdk.color_parse("white"))
window.set_opacity(0.8)
window.set_position(Gtk.WindowPosition.CENTER)
window.show_all()
GObject.threads_init()
Gtk.main()
splashwindow()
বিঃদ্রঃ
অবশ্যই বার্তার মূল অংশের মতো , আপনিও কোনও ফাইল থেকে বার্তা প্রি-পোস্ট করার জন্য স্ক্রিপ্টটি পরিবর্তন করতে পারেন যা এটি বজায় রাখতে আরও সুবিধাজনক করে তোলে। উত্তরে সরলতার কারণেই এটি কি পছন্দ করেছে।