title: VarsWidget created: 20150426115958020 modified: 20150426115958020 tags: Widgets caption: vars ! Introduction The ''vars'' widget allows you to set multiple variables in one go. It thereby reduces code complexity that would arise when setting many variables using the [[SetWidget]]. ! Content and Attributes The content of the `<$vars>` widget is the scope for the value assigned to the variable. |!Attribute |!Description | |//{attributes not starting with $}// |Each attribute name specifies a variable name. The attribute value is used as variable assignement | ! Examples Consider a case where you need to set multiple variables. Using the `<$vars>` widget, this situation may be handled in the following way: ``` \define helloworld() Hello world! <$vars greeting="Hi" me={{!!title}} sentence=<>> <>! I am <> and I say: <> ``` In contrast, here is the same example, but using the `<$set>` widget instead: ``` <$set name="greeting" value="Hi" /> <$set name="me" value={{!!title}} /> <$set name="sentence" value=<> /> <>! I am <> and I say: <> ``` ! Remarks It should be noted that this widget differs from the set widget in the following ways: * You cannot specify a fallback (also known as "emptyValue") * You cannot use a filter to produce a conditional variable assignement