### Script Execution Order Example Source: http://www.salamlang.ir/learn/page-head/ This example demonstrates the execution order of module scripts versus classic scripts. The module script waits for the page to finish loading, while the classic script executes immediately. ```salam صفحه: سراسری: گزینشگر = "body" خانواده قلم = "Tahoma, system-ui, sans-serif" فضا = "1.5rem" پایان اسکریپت سفارشی: نوع = "module" محتوا = "document.getElementById('log').textContent += ' ماژول (منتظر پایان صفحه)'" پایان پاراگراف: محتوا = "ترتیب اجرا:" پایان پاراگراف: شناسه = "log" محتوا = "" پایان اسکریپت سفارشی: محتوا = "document.getElementById('log').textContent += ' معمولی (همان لحظه)'" پایان بدون اسکریپت: محتوا = "برای دیدن ترتیب اجرا به جاوااسکریپت نیاز است." پایان پایان ``` -------------------------------- ### View Transition Example Source: http://www.salamlang.ir/learn/css-motion/ This example demonstrates a view transition that animates a tile element changing size and color. It checks for browser support of document.startViewTransition before executing the transition. ```text صفحه: عنوان = "گذار نما" سبک: محتوا = ".wide { width: 240px !important; height: 100px !important; background: #f59e0b !important } ::view-transition-group(tile) { animation-duration: 500ms }" پایان سراسری: گزینشگر = "body" خانواده قلم = "Tahoma, system-ui, sans-serif" فضا = 30 پایان جعبه: شناسه = "tile" عرض = 80 ارتفاع = 80 پس زمینه = "#0f766e" گردی کادر = 12 نام گذار نما = tile پایان دکمه: فضا بالا = 16 کلیک = "var f = function () { document.getElementById('tile').classList.toggle('wide') }; if (document.startViewTransition) { document.startViewTransition(f) } else { f() }" محتوا = "تغییر شکل" پایان پایان ``` -------------------------------- ### Selector Property Example Source: http://www.salamlang.ir/learn/css-basics/ Example of using the selector property within a global rule. ```salam سراسری: گزینشگر = "li:nth-child(odd)" پس زمینه = "#f1f5f9" پایان ``` -------------------------------- ### Salam language flow example rules-flow.salam Source: http://www.salamlang.ir/learn/rules/ This example demonstrates type checking and control flow in Salam, including exhaustive pattern matching with 'همخوان' and conditional return paths. The code defines a 'چراغ' enum and functions that must handle all possible paths to avoid compiler errors. ```salam جداشمار چراغ: قرمز، زرد، سبز پایان تابع کار(چ: چراغ): رشته: برگشت همخوان چ: قرمز: "بایست" پایان زرد: "آهسته" پایان سبز: "برو" پایان پایان پایان تابع علامت(ن: صحیح): رشته: اگر ن > ۰: برگشت "مثبت" وگرنه ن < ۰: برگشت "منفی" پایان برگشت "صفر" پایان تابع ریشه: سرچاپ کار(چراغ.زرد)، کار(چراغ.سبز) سرچاپ علامت(-۴)، علامت(۰)، علامت(۹) پایان ``` -------------------------------- ### Menu Example Source: http://www.salamlang.ir/learn/page-structure/ A list of commands represented as buttons. ```salamlang منو: مورد: دکمه: محتوا = "برش" پایان پایان مورد: دکمه: محتوا = "رونوشت" پایان پایان مورد: دکمه: محتوا = "چسباندن" پایان پایان پایان ``` -------------------------------- ### Padding inline start property Source: http://www.salamlang.ir/learn/css-basics/ Sets internal spacing at the start of the inline axis. ```text جعبه: فاصله ابتدا = 40 پس زمینه = "#bbf7d0" محتوا = "۴۰ پیکسل فاصله‌ی درونی در سمت آغاز" پایان ``` -------------------------------- ### Details Example Source: http://www.salamlang.ir/learn/page-structure/ A block that can be toggled open or closed by the user. ```salamlang جزئیات: خلاصه: محتوا = "بیشتر درباره‌ی کاه‌ریزی" پایان پاراگراف: محتوا = "کاه، پوست درخت یا برگ، همه جواب می‌دهند." پایان پایان ``` -------------------------------- ### Height Property Example Source: http://www.salamlang.ir/learn/css-basics/ Sets a fixed height for an element. ```salam جعبه: ارتفاع = 80 پس زمینه = "#bbf7d0" فاصله = 8 محتوا = "۸۰ پیکسل بلند" پایان ``` -------------------------------- ### Width Property Example Source: http://www.salamlang.ir/learn/css-basics/ Sets the width of a box using a percentage value. ```salam جعبه: عرض = "60%" پس زمینه = "#bfdbfe" فاصله = 8 محتوا = "۶۰ درصد والد" پایان ``` -------------------------------- ### Min-Width Property Example Source: http://www.salamlang.ir/learn/css-basics/ Sets a minimum width for an element to ensure readability. ```salam جعبه: عرض = "20%" کمینه عرض = 160 پس زمینه = "#bfdbfe" فاصله = 8 محتوا = "هرگز کمتر از ۱۶۰ پیکسل نمی‌شود" پایان ``` -------------------------------- ### CSS margin-inline-start property usage Source: http://www.salamlang.ir/learn/css-basics/ Sets the space at the start of the inline axis. ```text جعبه: فضا ابتدا = 40 پس زمینه = "#fed7aa" محتوا = "با تورفتگی از سمت آغاز" پایان ``` -------------------------------- ### Padding block start property Source: http://www.salamlang.ir/learn/css-basics/ Sets internal spacing before the content in the block axis. ```text جعبه: فاصله بلوکی ابتدا = 24 پس زمینه = "#bbf7d0" محتوا = "۲۴ پیکسل پیش از آن" پایان ``` -------------------------------- ### Grid Column Start Property Source: http://www.salamlang.ir/learn/css-layout/ Defines the grid line where the element starts in the column direction. Lines are counted from 1, starting at the edge of the first column. ```text جعبه: نمایش = شبکه ستون های شبکه = "repeat(3, 1fr)" شکاف = 6 جعبه: آغاز ستون شبکه = 2 پس زمینه = "#fca5a5" فاصله = 8 محتوا = "از خط ۲ شروع می‌شود" پایان پایان ``` -------------------------------- ### Call a package from a folder Source: http://www.salamlang.ir/learn/packages/ This example demonstrates calling a package structured within a folder. The main program imports 'shop/shop.salam' to access functions from the package. ```salam فراخوانی فروشگاه "shop/shop.salam" تابع ریشه: سرچاپ فروشگاه.خوشامد("سارا") سرچاپ فروشگاه.جمع سبد([۱۲۵۰، ۳۹۹، ۲۰۵]) پایان ``` -------------------------------- ### Create a dynamic web server with Salam Source: http://www.salamlang.ir/learn/layout/ This example demonstrates a web server that responds to requests with a personalized greeting based on the 'name' query parameter. It uses the network.http and network.router modules to handle routing and server execution. ```salam واردسازی شبکه.اچ تی تی پی واردسازی شبکه.مسیریاب صفحه خوشامد(نام: رشته): عنوان = "درود " + نام زبان = "فارسی" جهت = "راست به چپ" سرتیتر: اندازه = ۱ محتوا = "درود، " + نام پایان پاراگراف: محتوا = "این صفحه روی سرور ساخته شد." پایان پایان تابع خانه(زمینه: صحیح۶۴): ناپایا نام := اچ تی تی پی.پرسمان(زمینه، "name") اگر نام == "": نام = "مهمان" پایان اچ تی تی پی.اچ تی ام ال(زمینه، خوشامد(نام)) پایان تابع ریشه: ناپایا م := مسیریاب.مسیریاب جدید() مسیریاب.دریافت(م، "/"، خانه) ناپایا س := اچ تی تی پی.سرور جدید(۸۰۸۰) اچ تی تی پی.استفاده(س، م) اچ تی تی پی.اجرا(س) پایان ``` -------------------------------- ### Ordered List Start Attribute Source: http://www.salamlang.ir/learn/page-structure/ Sets the starting number for the ordered list. ```salamlang فهرست شماره‌دار: شروع = ۵ مورد: محتوا = "پنجم" پایان مورد: محتوا = "ششم" پایان پایان ``` -------------------------------- ### Initialize a new Salam project Source: http://www.salamlang.ir/learn/packages/ Use the salam new command to create a new project directory with the necessary main.salam and salam.toml files. ```bash salam new shop ``` -------------------------------- ### Pointer and Interaction Styling in Salam Source: http://www.salamlang.ir/learn/css-responsive/ This example demonstrates various pointer behaviors, user selection settings, pointer-events, and resizing properties using the Salam language syntax. ```Salam واردسازی دام واردسازی تبدیل ناپایا شمار := 0 تابع شمردن(): شمار += 1 دام.تنظیم متن(دام.با شناسه("n"), "کلیک‌های رسیده: " + تبدیل.قالب عدد(شمار)) پایان بخش خانه(نشان): جعبه: فاصله = "8 12" پس زمینه = "#e0f2fe" گردی کادر = 6 ترازمتن = center نشانگر = نشان محتوا = نشان پایان پایان صفحه: عنوان = "نشانگر و کنترل اشاره" سراسری: گزینشگر = "body" خانواده قلم = "Tahoma, system-ui, sans-serif" فضا = 20 پایان جعبه: نمایش = grid ستون های شبکه = "repeat(auto-fit, minmax(110px, 1fr))" شکاف = 8 خانه: نشان = "pointer" پایان خانه: نشان = "not-allowed" پایان خانه: نشان = "grab" پایان خانه: نشان = "zoom-in" پایان پایان پاراگراف: انتخاب کاربر = none محتوا = "این جمله را با موشواره نمی‌شود انتخاب کرد." پایان جعبه: نمایش = flex شکاف = 8 دکمه: شناسه = "on" کلیک = شمردن محتوا = "کار می‌کند" پایان دکمه: شناسه = "off" رویدادهای اشاره‌گر = none شفافیت = 0.5 کلیک = شمردن محتوا = "pointer-events: none" پایان پایان پاراگراف: شناسه = "n" محتوا = "کلیک‌های رسیده: ۰" پایان متن بلند: تغییر اندازه = vertical ردیف‌ها = 2 محتوا = "گوشه را بکشید تا اندازه عوض شود" پایان پایان ``` -------------------------------- ### Grid Row Start Property Source: http://www.salamlang.ir/learn/css-layout/ Defines the grid line where the element starts in the row direction, counted from 1 at the top. ```text جعبه: نمایش = شبکه ستون های شبکه = "1fr 1fr" ردیف‌های خودکار شبکه = 40 شکاف = 6 جعبه: آغاز ردیف شبکه = 2 پس زمینه = "#fca5a5" فاصله = 8 محتوا = "از ردیف ۲ شروع می‌شود" پایان پایان ``` -------------------------------- ### Field Sizing Example Source: http://www.salamlang.ir/learn/css-basics/ Demonstrates how to use field-sizing to make an input box grow with user input, compared to a fixed-width input. ```salam صفحه: عنوان = "اندازه فیلد" سراسری: گزینشگر = "body" خانواده قلم = "Tahoma, system-ui, sans-serif" فضا = 20 پایان سراسری: گزینشگر = "p" فضا = "0 0 8px" پایان پاراگراف: محتوا = "در کادر بنویسید: با متن بزرگ می‌شود." پایان ورودی: شناسه = "name" اندازه فیلد = محتوا کمینه عرض = "6ch" بیشینه عرض = "100%" فاصله = 6 اندازه قلم = 18 جانگهدار = "نام شما" پایان پاراگراف: محتوا = "بدون آن، کادر نوشتن همیشه یک پهنای ثابت دارد:" فضا بالا = 24 پایان ورودی: فاصله = 6 اندازه قلم = 18 جانگهدار = "نام شما" پایان پایان ``` -------------------------------- ### Importing Standard Libraries Source: http://www.salamlang.ir/learn/packages/ Demonstrates importing standard libraries like 'رشته' (string) and 'ریاضی' (math) and using their functions. ```salam واردسازی رشته واردسازی ریاضی تابع ریشه: متن := " سلام دنیا " سرچاپ رشته.پیرایش(متن) سرچاپ رشته.شامل است(متن، "دنیا") سرچاپ ریاضی.جذر(۸۱.۰)، ریاضی.توان(۲.۰، ۱۰.۰) پایان ``` -------------------------------- ### Grid Area Property Source: http://www.salamlang.ir/learn/css-layout/ Places an element in a grid area. It can reference a name from grid template areas or use four numbers separated by slashes for row start, column start, row end, and column end. ```text جعبه: نمایش = شبکه ستون های شبکه = "repeat(3, 1fr)" ردیف‌های خودکار شبکه = 40 شکاف = 6 جعبه: ناحیه شبکه = "1 / 2 / 3 / 4" پس زمینه = "#fca5a5" فاصله = 8 محتوا = "ردیف ۱ تا ۲، ستون ۲ تا ۳" پایان پایان ``` -------------------------------- ### Add a library package Source: http://www.salamlang.ir/learn/packages/ Use the add command to include external libraries like db.redis into your project before importing them. ```bash salam add db.redis ``` -------------------------------- ### scroll-padding-inline-start Source: http://www.salamlang.ir/learn/css-more/ Sets the scroll padding at the start of the inline axis. ```CSS جعبه: نوع چسبیدن پیمایش = "x mandatory" فاصله پیمایش ابتدا = 30 سرریز افقی = auto نمایش = flex عرض = 200 جعبه: فلکس = "0 0 150" تراز چسبیدن پیمایش = "start" پس زمینه = "#fef08a" محتوا = "کارت اول" پایان پایان ``` -------------------------------- ### scroll-padding-block-start Source: http://www.salamlang.ir/learn/css-more/ Sets the scroll padding at the start of the block axis. ```CSS جعبه: فاصله پیمایش بلوکی ابتدا = 48 سرریز عمودی = auto ارتفاع = 120 سرتیتر: اندازه = 3 شناسه = "part" محتوا = "یک بخش" پایان پایان ``` -------------------------------- ### Build a Salam project Source: http://www.salamlang.ir/learn/packages/ Execute the build command within the project directory to compile the main.salam file into an executable. ```bash salam build ``` -------------------------------- ### Managing memory buffers and pointers Source: http://www.salamlang.ir/learn/c-interop/ Shows how to allocate memory for C functions, use pointers as arrays, and handle null pointers returned by C. The example highlights that strings in C are terminated by a null byte, which truncates data when converted to a string type. ```salam واردسازی حافظه درون‌داد: تابع snprintf(buf: تهی*، size: اندازه مثبت، format: رشته، ...): صحیح تابع getenv(name: رشته): رشته پایان تابع ریشه: بافر := حافظه.تخصیص صفرشده(۳۲ برگردان طبیعی۶۴) برگردان طبیعی۸* دیرکن حافظه.آزادسازی(بافر برگردان تهی*) ن := snprintf(بافر برگردان تهی*، ۳۲ برگردان اندازه مثبت، "%s-%05d"، "INV"، ۴۲) برچسب := بافر برگردان رشته سرچاپ ن، برچسب بایت‌ها := [۷۲، ۱۰۵، ۰، ۳۳، ۳۳] تکرار ۵ در ای: بافر[ای] = بایت‌ها[ای] برگردان طبیعی۸ پایان متن := بافر برگردان رشته سرچاپ "به‌صورت رشته:"، طول(متن)، "بایت" ناپایا جمع := ۰ تکرار ۵ در ای: جمع += بافر[ای] برگردان صحیح پایان سرچاپ "از راه اشاره‌گر:"، جمع مقدار := getenv("SALAM_EXAMPLE_UNSET") اگر (مقدار برگردان تهی*) == پوچ: سرچاپ "SALAM_EXAMPLE_UNSET تعریف نشده است" پایان پایان ``` -------------------------------- ### scroll-padding-inline Source: http://www.salamlang.ir/learn/css-more/ Sets the scroll padding for both the start and end of the inline axis. ```CSS جعبه: نوع چسبیدن پیمایش = "x mandatory" فاصله پیمایش خطی = "16 32" سرریز افقی = auto نمایش = flex عرض = 200 جعبه: فلکس = "0 0 150" تراز چسبیدن پیمایش = center پس زمینه = "#a5f3fc" محتوا = "کارت" پایان پایان ``` -------------------------------- ### scroll-padding-block Source: http://www.salamlang.ir/learn/css-more/ Sets the scroll padding for both the start and end of the block axis. ```CSS جعبه: نوع چسبیدن پیمایش = "y mandatory" فاصله پیمایش بلوکی = "10 20" سرریز عمودی = auto ارتفاع = 100 جعبه: ارتفاع = 90 تراز چسبیدن پیمایش = "start" پس زمینه = "#fde68a" محتوا = "سطر یک" پایان جعبه: ارتفاع = 90 تراز چسبیدن پیمایش = "start" پس زمینه = "#fecaca" محتوا = "سطر دو" پایان پایان ``` -------------------------------- ### Dynamic Page Server with net.http and net.router Source: http://www.salamlang.ir/learn/web-projects/ This program defines a dynamic page that accepts name and plan parameters from the URL. It uses the net.http and net.router packages to handle requests and routing, and automatically sanitizes input to prevent HTML injection. ```salam واردسازی شبکه.اچ تی تی پی واردسازی شبکه.مسیریاب صفحه خوشامد(نام: رشته، طرح: رشته): عنوان = "خوش آمدید " + نام زبان = "فارسی" جهت = "راست به چپ" سراسری: گزینشگر = "body" خانواده قلم = "Tahoma, system-ui, sans-serif" فضا = 0 پس زمینه = "#fafaf9" پایان اصلی: بیشینه عرض = "30rem" فضا = "48px auto" فاصله = 28 پس زمینه = سفید گردی کادر = 16 سرتیتر: اندازه = 1 محتوا = "خوش آمدید " + نام پایان پاراگراف: محتوا = "طرح " + طرح + " شما از دوشنبه شروع می‌شود." پایان پایان پایان تابع خانه(زمینه: صحیح۶۴): ناپایا نام := اچ تی تی پی.پرسمان(زمینه، "name") ناپایا طرح := اچ تی تی پی.پرسمان(زمینه، "plan") اگر نام == "": نام = "دوست عزیز" پایان اگر طرح == "": طرح = "تکی" پایان اچ تی تی پی.اچ تی ام ال(زمینه، خوشامد(نام، طرح)) پایان تابع ریشه: ناپایا م := مسیریاب.مسیریاب جدید() مسیریاب.دریافت(م، "/"، خانه) ناپایا س := اچ تی تی پی.سرور جدید(۸۰۸۰) اچ تی تی پی.استفاده(س، م) اچ تی تی پی.اجرا(س) پایان ``` -------------------------------- ### Video Muted Source: http://www.salamlang.ir/learn/page-media/ Starts the video with audio disabled. ```text ویدیو: نشانی = "clip.mp4" کنترل‌ها = درست بی‌صدا = درست عرض = ۳۲۰ پایان ``` -------------------------------- ### Define CSS display properties Source: http://www.salamlang.ir/learn/css-basics/ This example demonstrates how to set different display behaviors like inline, inline-block, and block for elements. ```salam صفحه: عنوان = "نمایش" سراسری: اندازه جعبه = "border-box" پایان سراسری: گزینشگر = "body" خانواده قلم = "Tahoma, system-ui, sans-serif" فضا = 20 پایان سراسری: گزینشگر = "span" عرض = 90 ارتفاع = 40 فاصله = 6 فضا = 2 پس زمینه = "#bbf7d0" کادر = "1px solid #15803d" پایان سرتیتر: اندازه = 3 محتوا = "خطی (پیش‌فرض تکه)" پایان جعبه: تکه: محتوا = "یک" پایان تکه: محتوا = "دو" پایان تکه: محتوا = "سه" پایان پایان سرتیتر: اندازه = 3 محتوا = "خطی بلوکی" پایان جعبه: تکه: نمایش = "خطی بلوکی" محتوا = "یک" پایان تکه: نمایش = "خطی بلوکی" محتوا = "دو" پایان تکه: نمایش = "خطی بلوکی" محتوا = "سه" پایان پایان سرتیتر: اندازه = 3 محتوا = "بلوکی" پایان جعبه: تکه: نمایش = بلوکی محتوا = "یک" پایان تکه: نمایش = بلوکی محتوا = "دو" پایان پایان پایان ``` -------------------------------- ### scroll-margin-inline-start usage Source: http://www.salamlang.ir/learn/css-more/ Defines the scroll snap margin at the start of the inline direction. ```text جعبه: تراز چسبیدن پیمایش = "start" فضا پیمایش ابتدا = 30 پس زمینه = "#fef08a" فاصله = 12 محتوا = "فضا در آغاز" پایان ``` -------------------------------- ### Handling Touch Events with Salam Source: http://www.salamlang.ir/learn/events-drag-touch/ This example demonstrates how to track touch coordinates and count active fingers using touch event handlers. It includes CSS-like styling for a touch pad and a marker that follows the touch position. ```salam واردسازی دام تابع بگذار(رویداد: صحیح۶۴): مستطیل := دام.فراخوان(دام.با شناسه("pad")، "getBoundingClientRect") نشانه := دام.با شناسه("mark") دام.تنظیم سبک(نشانه، "left"، (دام.لمس افقی(رویداد) - دام.دریافت خاصیت عددی(مستطیل، "left") - ۲۰.۰) + "px") دام.تنظیم سبک(نشانه، "top"، (دام.لمس عمودی(رویداد) - دام.دریافت خاصیت عددی(مستطیل، "top") - ۲۰.۰) + "px") دام.تنظیم سبک(نشانه، "display"، "block") انگشت ها := دام.دریافت خاصیت عددی(دام.دریافت خاصیت(رویداد، "touches")، "length") دام.تنظیم متن(دام.با شناسه("info")، "انگشت‌های روی صفحه: " + انگشت ها) پایان تابع بردار(چه: رشته): دام.تنظیم سبک(دام.با شناسه("mark")، "display"، "none") دام.تنظیم متن(دام.با شناسه("info")، چه) پایان صفحه: سراسری: گزینشگر = "body" خانواده قلم = "Tahoma, system-ui, sans-serif" فضا = 24 پایان جعبه: شناسه = "pad" موقعیت = نسبی عرض = 320 ارتفاع = 180 پس زمینه = "#fef3c7" گردی کادر = 10 کنش لمسی = هیچ انتخاب کاربر = هیچ شروع لمس = بگذار حرکت لمس = بگذار اتمام لمس = (): بردار("پایان لمس") پایان لغو لمس = (): بردار("لمس لغو شد") پایان محتوا = "اینجا را با انگشت لمس کنید" جعبه: شناسه = "mark" موقعیت = مطلق نمایش = هیچ عرض = 40 ارتفاع = 40 گردی کادر = "50%" پس زمینه = "#f59e0b" پایان پایان پاراگراف: شناسه = "info" محتوا = "منتظر لمس." پایان پایان ``` -------------------------------- ### scroll-margin-block-start usage Source: http://www.salamlang.ir/learn/css-more/ Defines the scroll snap margin at the start of the block direction. ```text سرتیتر: اندازه = 3 فضا پیمایش بلوکی ابتدا = 64 محتوا = "عنوان بخش" پایان ``` -------------------------------- ### Allocate and manipulate memory with pointers in Salam Source: http://www.salamlang.ir/learn/memory/ This example demonstrates allocating memory for an array of 64-bit integers, performing calculations, and freeing the memory. It also shows how to use the null pointer constant 'پوچ'. ```salam واردسازی حافظه تابع ریشه: ن := ۵ مربع‌ها := حافظه.تخصیص((ن برگردان طبیعی۶۴) * اندازه‌گونه(صحیح۶۴)) برگردان صحیح۶۴* دیرکن حافظه.آزادسازی(مربع‌ها برگردان تهی*) تکرار ن در ی: مربع‌ها[ی] = (ی * ی) برگردان صحیح۶۴ پایان ناپایا جمع := ۰ برگردان صحیح۶۴ تکرار ن در ی: جمع += مربع‌ها[ی] پایان سرچاپ مربع‌ها[۴]، جمع هیچ := پوچ برگردان صحیح۶۴* سرچاپ هیچ == پوچ پایان ``` -------------------------------- ### Using printf and variadic functions Source: http://www.salamlang.ir/learn/c-interop/ Demonstrates calling C functions with variable arguments like printf, strlen, atoi, and toupper. Note that printf output is interleaved with Salam's print function, and byte-based padding like %-8s counts bytes rather than characters. ```salam درون‌داد: تابع printf(format: رشته، ...): صحیح تابع strlen(s: رشته): اندازه مثبت تابع atoi(s: رشته): صحیح تابع toupper(c: صحیح): صحیح پایان تابع ریشه: سرچاپ "رسید" printf("%-8s %3d x %6.2f\n"، "coffee"، ۲، ۳.۵) printf("%-8s %3d x %6.2f\n"، "bagel"، ۱، ۲.۲۵) شمار := atoi("12") + atoi("30") سرچاپ "اقلام:"، شمار واژه := "salam" سرچاپ "بایت‌ها:"، strlen(واژه) سرچاپ "حرف اول:"، نویسه‌ازکد(toupper(کدنویسه(واژه))) پایان ``` -------------------------------- ### Track Default Source: http://www.salamlang.ir/learn/page-media/ Enables the track by default when the video starts. ```text ویدیو: نشانی = "talk.mp4" کنترل‌ها = درست عرض = ۳۲۰ شیار: نشانی = "talk.vtt" نوع شیار = زیرنویس زبان شیار = "fa" برچسب = "فارسی" پیش‌فرض = درست پایان پایان ``` -------------------------------- ### mask-size property example Source: http://www.salamlang.ir/learn/css-backgrounds/ Sets the size of the mask image. ```text جعبه: عرض = 140 ارتفاع = 80 پس زمینه = "#be123c" تصویر ماسک = "linear-gradient(black, black)" تکرار ماسک = "بدون تکرار" اندازه ماسک = "60% 60%" موقعیت ماسک = "وسط" پایان ``` -------------------------------- ### Opacity Property Example Source: http://www.salamlang.ir/learn/css-backgrounds/ Controls the transparency of an element and its contents. ```Salam جعبه: شفافیت = 0.5 فاصله = 16 پس زمینه = "#2563eb" رنگ = "سفید" محتوا = "نیمه‌پیدا" پایان ``` -------------------------------- ### Importing Dotted Packages Source: http://www.salamlang.ir/learn/packages/ Shows how to import nested packages using dot notation and access their functionality. ```salam واردسازی کدگذاری.جیسون تابع ریشه: سفارش := `{"id": 42, "item": "دفتر", "qty": 3}` اگر وارونه جیسون.معتبر(سفارش): سرچاپ "جیسون معتبر نیست" برگشت ۱ پایان سرچاپ "سفارش", جیسون.دریافت عدد(سفارش, "id") سرچاپ جیسون.دریافت عدد(سفارش, "qty"), "عدد", جیسون.دریافت(سفارش, "item") سرچاپ جیسون.دارد(سفارش, "coupon") پایان ``` -------------------------------- ### Multiple Descriptions Example Source: http://www.salamlang.ir/learn/page-structure/ A term associated with multiple descriptions. ```salamlang فهرست تعریف: واژه: محتوا = "اندازه‌ها" پایان شرح: محتوا = "کوچک" پایان شرح: محتوا = "بزرگ" پایان پایان ``` -------------------------------- ### Term and Description Example Source: http://www.salamlang.ir/learn/page-structure/ A simple term and description pair. ```salamlang فهرست تعریف: واژه: محتوا = "رنگ" پایان شرح: محتوا = "سبزآبی" پایان پایان ``` -------------------------------- ### Video Poster Source: http://www.salamlang.ir/learn/page-media/ Sets an image to display before the video starts playing. ```text ویدیو: نشانی = "clip.mp4" کنترل‌ها = درست پوستر = "cover.jpg" عرض = ۳۲۰ پایان ```