A system comprising: a head-mounted display system configured to present virtual content in a physical environment of a user; a head-mounted outward-facing imaging system configured to image the physical environment of the user; a hardware processor (260, 270) in communication with the display system and the outward-facing imaging system, the hardware processor programmed to: analyze an image of the physical environment acquired by the outward-facing imaging system; recognize a physical keyboard having a plurality of keys based on an analysis of the image; determine contextual information, some of the contextual information being associated with the physical keyboard and some of the contextual information being associated with the user's environment, wherein the contextual information further comprises a head pose of the user and a direction of a gaze of the user; determine a specification for the physical keyboard based at least in part on the contextual information; dynamically configure functions of at least a portion of the physical keyboard based at least in part on the specification; determine a rendering location of a virtual key label based at least in part on the specification; and instruct the display system to render the virtual key label at the determined rendering location, wherein, when it is determined, based on the contextual information, that the user is not able to perceive a whole of the physical keyboard while interacting with the display system, the rendering location of the virtual key label is dynamically moved to be within the field of view of the user. a head-mounted display system configured to present virtual content in a physical environment of a user; a head-mounted outward-facing imaging system configured to image the physical environment of the user; a hardware processor (260, 270) in communication with the display system and the outward-facing imaging system, the hardware processor programmed to: analyze an image of the physical environment acquired by the outward-facing imaging system; recognize a physical keyboard having a plurality of keys based on an analysis of the image; determine contextual information, some of the contextual information being associated with the physical keyboard and some of the contextual information being associated with the user's environment, wherein the contextual information further comprises a head pose of the user and a direction of a gaze of the user; determine a specification for the physical keyboard based at least in part on the contextual information; dynamically configure functions of at least a portion of the physical keyboard based at least in part on the specification; determine a rendering location of a virtual key label based at least in part on the specification; and instruct the display system to render the virtual key label at the determined rendering location, wherein, when it is determined, based on the contextual information, that the user is not able to perceive a whole of the physical keyboard while interacting with the display system, the rendering location of the virtual key label is dynamically moved to be within the field of view of the user. analyze an image of the physical environment acquired by the outward-facing imaging system; recognize a physical keyboard having a plurality of keys based on an analysis of the image; determine contextual information, some of the contextual information being associated with the physical keyboard and some of the contextual information being associated with the user's environment, wherein the contextual information further comprises a head pose of the user and a direction of a gaze of the user; determine a specification for the physical keyboard based at least in part on the contextual information; dynamically configure functions of at least a portion of the physical keyboard based at least in part on the specification; determine a rendering location of a virtual key label based at least in part on the specification; and instruct the display system to render the virtual key label at the determined rendering location, wherein, when it is determined, based on the contextual information, that the user is not able to perceive a whole of the physical keyboard while interacting with the display system, the rendering location of the virtual key label is dynamically moved to be within the field of view of the user.